JP6228824B2 - Analysis device, analysis system, program, and control method of analysis device - Google Patents
Analysis device, analysis system, program, and control method of analysis device Download PDFInfo
- Publication number
- JP6228824B2 JP6228824B2 JP2013247790A JP2013247790A JP6228824B2 JP 6228824 B2 JP6228824 B2 JP 6228824B2 JP 2013247790 A JP2013247790 A JP 2013247790A JP 2013247790 A JP2013247790 A JP 2013247790A JP 6228824 B2 JP6228824 B2 JP 6228824B2
- Authority
- JP
- Japan
- Prior art keywords
- module
- history information
- called
- unit
- amount
- 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.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Power Sources (AREA)
- Debugging And Monitoring (AREA)
Description
本発明は、端末で実行されるアプリケーションプログラムの開発支援に関するものである。 The present invention relates to development support for application programs executed on a terminal.
近年、スマートフォンに代表される携帯端末の多機能化が進み、携帯端末において実行されるアプリケーションプログラムの開発作業は複雑化している。また、アプリケーションプログラムが端末においてどのように使用されるかを開発段階において開発者が予想することは困難になっており、その使用態様は、実際にユーザにそのアプリケーションプログラムが使用されてはじめて分かることが多い。そしてその使用態様によっては、不要な処理が増加して、例えば消費電力量が多くなるなど不具合が生じることがある。 In recent years, mobile terminals such as smartphones have become more multifunctional, and the development work of application programs executed on mobile terminals has become complicated. In addition, it is difficult for the developer to predict how the application program will be used on the terminal at the development stage, and its usage can only be understood by the user when the application program is actually used. There are many. Depending on the usage mode, unnecessary processing may increase, causing a problem such as an increase in power consumption.
そこで、アプリケーションプログラムが実際に使用されたときの状況を記憶して、アプリケーションプログラムの開発に利用する試みが行われている。
特許文献1の請求項1および段落45には、モジュールごとの消費電力を算出するモジュール消費電力算出手段と、メソッドの「呼び出し回数」に基づいてメソッドごとにリソース消費割合を算出する第一の算出方法とが記載されている。特許文献2には「状態遷移事象」が記載されている。特許文献3の段落80には、「モジュール間の呼び出し関係を用いるプログラム評価装置」が記載されている。
Therefore, an attempt has been made to memorize the situation when the application program is actually used and use it for developing the application program.
In
ところで、特許文献1の図7や図13に示すように、トレースログに基づいたコールツリーにおいてモジュール(子メソッド)を呼び出すアプリケーションプログラム等(親メソッド)は予め決められている。つまり、特許文献1に記載された技術では、1つのモジュール(子メソッド)を呼び出す呼び出し側のモジュール、またはアプリケーションプログラム(親メソッド)は必ず1つであり、複数ではない。
また、特許文献2に記載された技術は、計算機システムの現在の状態に対して事象発生後にどの状態に遷移するかということに着目したものであるが、その確率構造は記憶装置に予め記憶されており、これを使って電力見積りを生成するだけに過ぎない。つまり、特許文献2に記載された技術では、実際に人にアプリケーションを使わせたときの履歴からどの状態遷移が頻繁に起きていて電力が使われるかを調べることはできない。
また、特許文献3に記載された技術は、対象モジュールとそれに呼び出される下位階層モジュールとを含む対象モジュール全体の消費電力を算出すると共に、対象モジュールだけの消費電力、下位階層モジュールだけの消費電力を算出する(段落91)というものである。つまり特許文献3に記載された技術では、特許文献1と同様、1つのモジュールを呼び出す呼び出し側のモジュールは必ず1つであり、複数ではない。
このように先行する技術において、呼び出し側モジュールと呼び出し先モジュールとの組み合わせごとに呼び出し回数や消費された電力量を特定することはできなかった。
By the way, as shown in FIG. 7 and FIG. 13 of
The technique described in Patent Document 2 focuses on which state the computer system changes to after the occurrence of an event with respect to the current state of the computer system, but the probability structure is stored in advance in a storage device. And just use it to generate a power estimate. That is, with the technique described in Patent Document 2, it is not possible to check which state transitions frequently occur and power is used from the history when an application is actually used by a person.
The technique described in Patent Document 3 calculates the power consumption of the entire target module including the target module and the lower layer module called by the target module, and calculates the power consumption of only the target module and the power consumption of the lower layer module. It is calculated (paragraph 91). That is, in the technique described in Patent Document 3, as in
Thus, in the prior art, the number of calls and the amount of power consumed cannot be specified for each combination of the caller module and the callee module.
本発明は、第1モジュールと、第1モジュールを呼び出した第2モジュールとの組み合わせごとに、第1モジュールおよび第2モジュールを呼び出すアプリケーションプログラムの実行状況を解析することを目的とする。 An object of the present invention is to analyze the execution status of an application program that calls a first module and a second module for each combination of a first module and a second module that calls the first module.
上述した課題を解決するため、本発明に係る解析装置は、複数の端末で実行されるアプリケーションプログラムにおいて呼び出されたモジュールの履歴を少なくとも含む履歴情報を取得する取得手段と、前記取得手段により取得された履歴情報に基づいて、第1モジュールにより消費された電力量を、当該第1モジュールを呼び出した第2モジュールごとに算出する算出手段と、前記第1モジュールが呼び出された回数を、前記第2モジュール、および当該第2モジュールの呼び出しの種類ごとに集計する集計手段と、前記算出手段により算出された電力量と、前記集計手段により集計された回数とを、前記第1モジュールおよび前記第2モジュールの組み合わせごとにそれぞれ出力する出力手段とを有することを特徴とする。 In order to solve the above-described problem, an analysis apparatus according to the present invention is acquired by an acquisition unit that acquires history information including at least a history of modules called in an application program executed on a plurality of terminals, and acquired by the acquisition unit. Calculation means for calculating the amount of power consumed by the first module for each second module that called the first module based on the history information, and the number of times the first module was called, The first module and the second module represent the modules, the totaling means for summing up each call type of the second module, the amount of power calculated by the calculating means, and the number of times totalized by the totaling means. Output means for outputting each combination.
好ましくは、前記取得手段により取得された履歴情報を複数のグループに分類する分類手段を有し、前記算出手段は、前記第1モジュールにより消費される電力量を、前記グループごとに算出し、前記集計手段は、前記第1モジュールが呼び出された回数を、当該第1モジュールを呼び出した前記第2モジュール、当該第2モジュールの呼び出しの種類、および前記グループごとに集計するとよい。 Preferably, the information processing apparatus includes a classification unit that classifies the history information acquired by the acquisition unit into a plurality of groups, and the calculation unit calculates the amount of power consumed by the first module for each group, and The counting means may count the number of times the first module has been called for each of the second module that has called the first module, the type of calling of the second module, and the group.
また、好ましくは、前記分類手段は、所定期間内における前記アプリケーションプログラムの実行時間に基づいて、前記端末のユーザが共通する前記履歴情報を前記複数のグループに分類するとよい。 Preferably, the classifying unit classifies the history information common to the user of the terminal into the plurality of groups based on an execution time of the application program within a predetermined period.
また、好ましくは、前記分類手段は、前記アプリケーションプログラムに使用される資源の種類に基づいて、前記履歴情報を前記複数のグループに分類するとよい。 Preferably, the classification means classifies the history information into the plurality of groups based on a type of resource used for the application program.
また、好ましくは、前記分類手段は、前記アプリケーションプログラムが実行される前記端末がおかれている通信環境に基づいて、前記履歴情報を前記複数のグループに分類するとよい。 Preferably, the classification means classifies the history information into the plurality of groups based on a communication environment in which the terminal on which the application program is executed is placed .
また、好ましくは、前記分類手段は、前記端末で実行されるアプリケーションプログラムの設定に基づいて、前記履歴情報を前記複数のグループに分類するとよい。 Preferably, the classification means classifies the history information into the plurality of groups based on a setting of an application program executed on the terminal.
また、好ましくは、前記出力手段は、前記第1モジュールを呼び出した前記第2モジュール、および当該第2モジュールを呼び出した1以上の第3モジュールによる呼び出しの順序ごとに、前記電力量と前記回数とを出力するとよい。 Preferably, the output means includes the power amount and the number of times for each order of calling by the second module that calls the first module and one or more third modules that call the second module. Should be output.
また、本発明に係る解析システムは、上述の解析装置と、前記解析装置が出力する出力内容に基づいて、前記第1モジュールおよび前記第2モジュールの組み合わせに応じた電力量および回数を有向グラフにより表示する表示装置とを有することを特徴とする。 Further, the analysis system according to the present invention displays the amount of power and the number of times according to the combination of the first module and the second module as a directed graph based on the above-described analysis device and the output content output by the analysis device. And a display device.
また、本発明に係るプログラムは、コンピュータを、複数の端末で実行されるアプリケーションプログラムにおいて呼び出されたモジュールの履歴を少なくとも含む履歴情報を取得する取得手段と、前記取得手段により取得された履歴情報に基づいて、第1モジュールにより消費された電力量を、当該第1モジュールを呼び出した第2モジュールごとに算出する算出手段と、前記取得手段により取得された履歴情報に基づいて、前記第1モジュールが呼び出された回数を、前記第2モジュール、および当該第2モジュールの呼び出しの種類ごとに集計する集計手段と、前記算出手段により算出された電力量と、前記集計手段により集計された回数とを、前記第1モジュールおよび前記第2モジュールの組み合わせごとにそれぞれ出力する出力手段として機能させるためのプログラムである。 In addition, the program according to the present invention includes a acquiring unit that acquires history information including at least a history of modules called in an application program executed on a plurality of terminals, and a history information acquired by the acquiring unit. On the basis of the calculation means for calculating the amount of power consumed by the first module for each second module that calls the first module, and based on the history information acquired by the acquisition means, the first module The summing means for summing up the number of times called for each type of call of the second module and the second module, the amount of power calculated by the calculating means, and the number of times summed by the summing means, Output for each combination of the first module and the second module Is a program for functioning as a stage.
また、本発明に係る解析装置の制御方法は、取得手段が、複数の端末で実行されるアプリケーションプログラムにおいて呼び出されたモジュールの履歴を少なくとも含む履歴情報を取得する取得ステップと、算出手段が、前記取得ステップにおいて取得された履歴情報に基づいて、第1モジュールにより消費された電力量を、当該第1モジュールを呼び出した第2モジュールごとに算出する算出ステップと、集計手段が、前記取得ステップにおいて取得された履歴情報に基づいて、前記第1モジュールが呼び出された回数を、前記第2モジュール、および当該第2モジュールの呼び出しの種類ごとに集計する集計ステップと、出力手段が、前記算出ステップにおいて算出された電力量と、前記集計ステップにおいて集計された回数とを、前記第1モジュールおよび前記第2モジュールの組み合わせごとにそれぞれ出力する出力ステップとを有することを特徴とする。 Further, in the control method of the analysis device according to the present invention, the acquisition unit acquires the history information including at least the history of the module called in the application program executed in the plurality of terminals, and the calculation unit includes the calculation unit, Based on the history information acquired in the acquisition step, a calculation step for calculating the amount of power consumed by the first module for each second module that called the first module, and a counting means are acquired in the acquisition step. The calculating step calculates the number of times the first module has been called for each type of the second module and the calling of the second module based on the recorded history information, and the output means calculates in the calculating step. And the number of times counted in the counting step, And an outputting step of outputting, respectively for each combination of one module and the second module.
本発明によれば、第1モジュールと、第1モジュールを呼び出した第2モジュールとの組み合わせごとに、第1モジュールおよび第2モジュールを呼び出すアプリケーションプログラムの実行状況を解析することができる。 According to the present invention, it is possible to analyze the execution status of the application program that calls the first module and the second module for each combination of the first module and the second module that calls the first module.
1.実施形態
1−1.解析システムの構成
図1は、解析システム9の構成を示す図である。通信回線3は、解析装置1、開発装置4、およびサーバ装置5を接続する回線であり、これら各装置間の情報の遣り取りを仲介する。また、通信回線3は、これらの各装置と、移動通信網6を介して端末2との情報の遣り取りを仲介する。通信回線3は、例えばインターネットである。移動通信網6は、例えば、LTE(Long Term Evolution)やいわゆる3Gなどに準拠したネットワークである。移動通信網6は、通信回線3と接続されており、解析装置1など通信回線3に接続された装置と端末2との間の通信を仲介する。移動通信網6は、複数の基地局や図示せぬ交換局などの通信設備を有しており、これらを介して複数の端末2に通信サービスを提供する。
1. Embodiment 1-1. Configuration of Analysis System FIG. 1 is a diagram showing the configuration of the analysis system 9. The communication line 3 is a line that connects the
開発装置4は、端末2で実行されるアプリケーションプログラム(以下、アプリという)の開発をするための装置であり、例えばパーソナルコンピュータである。また、開発装置4は、解析装置1によって出力される解析結果を取得してその解析結果に応じた表現をする機能、例えば状態遷移図を描画するといった機能を有する。
The development device 4 is a device for developing an application program (hereinafter referred to as an application) executed on the terminal 2, and is a personal computer, for example. Further, the development device 4 has a function of acquiring an analysis result output from the
サーバ装置5は、開発装置4で開発されたアプリを登録するための装置である。サーバ装置5は、端末2の要求に応じて登録されたアプリを端末2にダウンロードさせる。端末2は、サーバ装置5にアプリを要求してそのアプリを取得し実行する情報処理装置であり、例えば、スマートフォンなどの携帯電話機である。解析システム9には、複数の端末2が含まれる。解析装置1は、端末2がアプリを実行したときに記憶される履歴情報を取得して、その内容を解析する装置である。解析装置1は、例えばコンピュータであり、履歴情報の解析結果を開発装置4に向けて出力する。
The
1−2.端末の構成
図2は、端末2の構成を示す図である。制御部21は、端末2の各部の動作を制御する手段である。制御部21は、CPU(Central Processing Unit)などの演算処理装置や、ROM(Read Only Memory)、RAM(Random Access Memory)などの記憶装置を備え、これら記憶装置に記憶されたプログラムを実行する。通信部23は、通信回線3を介して解析装置1やサーバ装置5などと、アプリや履歴情報などを通信するインターフェイスであり、例えばIMT−2000やIMT−Advancedなどに準拠した無線通信回路である。
1-2. Terminal Configuration FIG. 2 is a diagram illustrating a configuration of the terminal 2. The control unit 21 is means for controlling the operation of each unit of the terminal 2. The control unit 21 includes an arithmetic processing device such as a CPU (Central Processing Unit) and a storage device such as a ROM (Read Only Memory) and a RAM (Random Access Memory), and executes a program stored in these storage devices. The
表示部24は、液晶などを使用したディスプレイ装置であり、制御部21からの指示に応じて画像を表示する。操作部25は各種の指示を入力するためのタッチパネルやボタンなどを有しており、ユーザによる操作を受け付けてその操作内容に応じた信号を制御部21に供給する。測位部26は、GPS(Global Positioning System)測位方式に基づいて端末2の位置を測定(測位)する。撮像部27は、端末2の周囲を撮像する構成であり、例えばレンズなどの光学系とCMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどの撮像素子とを有する。
The
記憶部22はフラッシュメモリなどの大容量の記憶手段であり、制御部21に読み込まれるプログラムを記憶する。なお、記憶部22は、いわゆるリムーバブルディスク、すなわち着脱可能な記録媒体を含んでもよい。また、記憶部22は、制御部21がアプリを実行する際に、そのアプリの実行に関する情報を履歴情報221として記憶する。
The
1−3.履歴情報の構成
図3は、アプリの実行によって生成される履歴情報221を説明するための概略図である。また、図4は、生成された履歴情報221を示す図である。端末2の制御部21は、アプリを実行することにより複数のモジュールを呼び出して実行する。そして、呼び出されたモジュールは、さらに他のモジュールを呼び出して実行する。これにより、複数のモジュールが並行して起動され、制御部21の制御状態は或るモジュールから他のモジュールへと遷移する。
1-3. Structure of History Information FIG. 3 is a schematic diagram for explaining
例えば、図3に示したように、モジュールMaが実行されているとき、制御部21は、「onResume()」というメソッドが実行されたことを契機として、このモジュールの名前であるモジュール名「Ma」とメソッドの名前であるメソッド名「onResume()」とを履歴情報221に記憶する。また、ユーザが、例えば表示部24に表示されている仮想的なボタンを押下する操作を操作部25に対して行うと、制御部21はこの操作を取得し、「onKeyDown()」というメソッドを実行する。この押下されたボタンが「バックボタン」であることを識別すると、制御部21は、モジュールMaの直前に表示部24による表示の占有権を有していたモジュールMbにその占有権を返す。
For example, as illustrated in FIG. 3, when the module Ma is being executed, the control unit 21 is triggered by the execution of the method “onResume ()” as a module name “Ma” that is the name of this module. And the method name “onResume ()” that is the name of the method is stored in the
このとき、制御部21は、インテントを送信したモジュールのモジュール名「Ma」と、送信したメソッドのメソッド名「onKeyDown()」と、その契機となったイベント「バックボタンの押下」と、インテントを受信したモジュールのモジュール名「Mb」と、受信したメソッドのメソッド名「onResume()」を履歴情報221に記憶する。
At this time, the control unit 21 receives the module name “Ma” of the module that transmitted the intent, the method name “onKeyDown ()” of the transmitted method, the event “back button press” that triggered the intent, The module name “Mb” of the module that received the tent and the method name “onResume ()” of the received method are stored in the
制御部21は、モジュールの呼び出しをその呼び出しを行ったモジュール、およびその呼び出しの種類ごとに区別して履歴情報221に記憶する。例えば制御部21は、モジュールが上述したように通常起動により起動される場合と、遠隔手続呼び出し(RPC:remote procedure call)により起動される場合とを区別して履歴情報221に記憶する。遠隔手続呼び出しとは、端末2のアプリが使用するアドレス空間とは異なるアドレス空間からの機能呼び出しであり、例えば、別々のプロセス空間にあるモジュール間で機能が呼び出されることなどである。
The control unit 21 distinguishes and stores the module call in the
また、端末2におけるシステム管理機能の一つであるアラームマネージャを経由してタイマー駆動でモジュールが起動された場合も、制御部21は、他のモジュールから起動された通常起動の場合と区別して履歴情報221に記憶する。インテントの送受信に関して引数が引き渡されたり、返り値が供給されたりした場合には、制御部21は、それらの値を履歴情報221に記憶する。
In addition, when the module is activated by the timer drive via the alarm manager which is one of the system management functions in the terminal 2, the control unit 21 distinguishes the history from the case of the normal activation activated from other modules. The
このように制御部21は、インテントの送受信などによる状態遷移の際に、その遷移に関わったモジュールやメソッドの名称を時刻とともに履歴情報221に記憶する。アプリが終了するときに、制御部21は、そのアプリが動作した総期間(アプリ動作期間という)を算出する。そして、制御部21は、そのアプリの名称であるアプリ名と、そのアプリを端末2に実行させたユーザの名前であるユーザ名とともに、算出したアプリ動作期間を履歴情報221のヘッダ部に記憶する。制御部21は、アプリ動作期間に加えて、アプリの開始時刻と終了時刻とを記憶してもよく、また、制御部21は、ユーザの操作が行われた時間(操作時間という)と、ユーザの操作が行われなかった時間(非操作時間という)とを区別して記憶してもよい。アプリ動作期間に加えて、制御部21は、モジュールごとの動作期間を記憶してもよい。なお、上述した操作時間とはアプリの画面が表示される時間の合計である。
As described above, the control unit 21 stores the names of the modules and methods involved in the transition in the
制御部21は、履歴情報221をモジュールごとの動作情報に区分けして記憶する。図3に示す例では、アプリの実行によって、1からNまでのN個のモジュールが起動され、その各動作を示す情報(モジュール動作情報という)がそれぞれ履歴情報221に記憶される。モジュール動作情報には、そのモジュール名、モジュールの種別、モジュールの開始時刻と終了時刻、他のモジュールへの遷移時刻、起動の契機となったイベントの種別、モジュールの実行に伴って使用される資源の消費量、および消費電力量が含まれる。ここで、資源とは、例えば、制御部21のCPUや記憶部22、通信部23、測位部26、および撮像部27など、端末2においてアプリに使用される資源をいう。
The control unit 21 stores the
1−4.解析装置の構成
図5は、解析装置1の構成を示す図である。制御部11は、解析装置1の各部の動作を制御する手段である。制御部11は、CPUなどの演算処理装置や、ROM、RAMなどの記憶装置を備え、これら記憶装置に記憶されたプログラムを実行する。通信部13は、通信回線3との間で情報を通信するインターフェイスであり、例えば各種のモデムや無線通信回路、あるいは、USB(Universal Serial Bus)規格に準拠したシリアルインターフェースや、IrDA(Infrared Data Association)などに準拠した無線インターフェイスなどである。
1-4. Configuration of Analysis Device FIG. 5 is a diagram illustrating a configuration of the
記憶部12はハードディスク、フラッシュメモリなどの大容量の記憶手段であり、制御部11に読み込まれるプログラムを記憶する。なお、記憶部12は、いわゆるリムーバブルディスク、すなわち着脱可能な記録媒体を含んでもよい。また、記憶部12は、履歴データベース(以下、図において「データベース」を「DB」と表記する)121と、分類情報122とを記憶する。
The
1−5.解析装置の機能的構成
図6は、解析装置1の機能的構成を示す図である。解析装置1の制御部11は、取得部111、算出部112、集計部113、出力部114、および分類部115として機能する。
1-5. Functional Configuration of Analysis Device FIG. 6 is a diagram illustrating a functional configuration of the
取得部111は、通信部13を介して複数の端末2から履歴情報221の複製を取得し、これらを履歴データベース121に記憶する。図7は、履歴データベース121を示す図である。各端末2から取得した履歴情報221の複製は、履歴データベース121に含まれる履歴情報1211としてそれぞれ記憶される。
The
分類部115は、履歴データベース121に含まれる複数の履歴情報1211をグループに分類し、分類した結果を分類情報122として記憶部12に記憶させる。図8は、分類情報122の例を示す図である。分類部115は、履歴情報1211に記述されたアプリ名、ユーザ名、アプリ動作期間を参照し、それらに基づいて各履歴情報1211を予め決められた区分に従って所定数(例えば3つ)のグループに分類する。具体的には、アプリ名、ユーザ名が共通する履歴情報1211を履歴データベース121から抽出し、抽出された履歴情報1211に含まれるアプリ動作期間をその日付ごとに合算することで、当該ユーザの当該アプリに対する一日あたりの動作期間を算出する。その上で、当該アプリの一日当たりの動作期間が長いユーザ(ヘビーユーザ)、短いユーザ(ライトユーザ)、その他のユーザ(通常ユーザ)の3つのグループを規定し、履歴情報1211を対応するユーザが属するグループに分類する。例えば、図8に示すように、共通するアプリ名およびユーザ名が記述された履歴情報1211は、対応するユーザの一日あたりのアプリ動作期間の合計が20分未満のグループと、20分以上120分未満のグループと、120分以上のグループとに分類される。
The
なお、アプリ動作期間は、アプリが実行される期間であるから、この場合の分類部115は、アプリが実行される期間ごとに履歴情報1211を分類する分類手段の一例である。
また、分類部115は、特定のアプリ名が記述された履歴情報1211を、それらに記述されたユーザ名ごとに区分けせずに、上述したアプリ動作期間に基づいて複数のグループに分類してもよい。この場合、対応するユーザの一日あたりのアプリ動作期間の合計ごとに履歴情報1211を分類するのではなく、履歴情報1211に記述されたアプリ動作期間そのものに応じてその履歴情報1211を複数のグループに分類すればよい。また、分類に用いられるアプリ動作期間は、履歴情報1211に含まれるその他のどの時間情報(例えば操作時間)であってもよい。履歴情報1211が分類されるグループは3つに限られず、2つでも4つ以上でもよい。
Since the application operation period is a period during which the application is executed, the
Further, the
算出部112は、取得部111により取得された履歴データベース121に基づいて、実行されたモジュール(第1モジュールという)により消費された電力量を、その第1モジュールを呼び出したモジュール(第2モジュールという)ごとに算出する。具体的には、履歴データベース121に含まれる複数の履歴情報1211から、モジュールの実行に伴って使用される資源の消費量、および消費電力量を抽出して、上述した電力量を算出する。なお、この算出部112は、分類部115により分類されたグループごとに、この算出を行ってもよい。
Based on the
集計部113は、第1モジュールが呼び出された回数を、第2モジュール、およびこの第2モジュールの呼び出しの種類ごとに集計する。すなわち、集計部113は、履歴データベース121を参照して、例えばモジュールMaが通常起動により起動された回数と、遠隔手続呼び出しにより起動された回数と、アラームマネージャにより起動された回数とをそれぞれ集計する。なお、この集計部113は、分類部115により分類されたグループごとに、この集計を行ってもよい。
The
出力部114は、算出部112により算出された電力量と、集計部113により集計された回数とを、第1モジュールおよび第2モジュールの組み合わせ、および分類部115により分類されたグループごとにそれぞれ出力する。例えば、モジュールMa、モジュールMbおよびモジュールMcがそれぞれ実行されるアプリにおいて、モジュールMaが、モジュールMbから呼び出される場合と、モジュールMcから呼び出される場合とがあるとき、算出部112は、第1モジュールとしてのモジュールMaにより消費された電力量を、第2モジュールとしてのモジュールMbおよびモジュールMcごとにそれぞれ算出する。
The
つまり、算出部112は、モジュールMbがモジュールMaを呼び出した場合(Mb→Ma)に消費された電力量と、モジュールMcがモジュールMaを呼び出した場合(Mc→Ma)に消費された電力量とをそれぞれ区別して算出する。同様に、集計部113は、モジュールMbがモジュールMaを(Mb→Ma)呼び出した回数と、モジュールMcがモジュールMaを(Mc→Ma)呼び出した回数とをそれぞれ区別して集計する。そして、出力部114は、Mb→Maの電力量と回数、Mc→Maの電力量と回数をそれぞれ出力する。
That is, the
なお、出力部114は、電力量と回数について、その実際のデータを出力してもよいが、実際のデータに応じた情報を出力してもよい。例えば、出力部114は、算出部112により算出された電力量と、集計部113により集計された回数とに応じた情報を、グラフのデータを記述するグラフデータ記述言語に従った文字列により出力してもよい。図9は、グラフデータ記述言語に従った文字列で出力された出力結果の例を示す図である。図9に示す文字列は、有向グラフを示すデータを記述するグラフデータ記述言語の規則にしたがっている。
The
例えば変数「a」は1行目に「Act.Ma」という文字列が、2行目に「50mAh」という文字列がそれぞれラベルとして図形内に記述されるブロックを表しており、その色は青に設定されている。また、変数「a」から変数「b」に引く矢印は、太さが「2mm」に、色が黄色に、それぞれ設定されている。すなわち、この文字列によれば、線の太さや色の設定によって、第1モジュールおよび第2モジュールの組み合わせごとの電力量や呼び出し回数が表現される。そして、出力部114が出力する文字列は、例えば、呼び出し回数が多くなるほど、線が太くなるように構成されたグラフを表現してもよいし、電力量が大きくなるほど、線の色が明るくなるように構成されたグラフを表現してもよい。なお、上述したラベルは、モジュール名およびそのモジュールにおいて消費された総電力量に応じて決められてもよい。
For example, the variable “a” represents a block in which a character string “Act.Ma” is described in the first line and a character string “50 mAh” is described as a label in the second line, and the color is blue. Is set to The arrow drawn from the variable “a” to the variable “b” is set to have a thickness of “2 mm” and a color of yellow. That is, according to this character string, the amount of power and the number of calls for each combination of the first module and the second module are expressed by setting the line thickness and color. The character string output from the
出力部114が出力した文字列は、通信部13を介して開発装置4に送信される。開発装置4は、上述したグラフデータ記述言語に従って書かれた文字列を解釈して、その内容に応じた有向グラフを描画する機能を有する。図10は、開発装置4において描画された有向グラフの例を示す図である。図10に示す有向グラフは、各モジュール間の呼び出しの回数とそれによって消費された電力量とが、モジュール間を結ぶ矢印線の太さや色により表現されているため、アプリの開発者は、実際に端末2においてアプリが実行される場合に、ユーザの操作に応じて、どのモジュール間の呼び出し回数が多くなり消費電力量が大きくなるかについて、把握し易くなる。その結果、アプリの開発者はアプリをどのように修正するべきかに関する示唆を得ることができる。
The character string output by the
また、解析装置1は、履歴データベース121に含まれる複数の履歴情報1211を、複数のグループに分類し、このグループごとに電力量と回数とを出力するので、アプリの開発者は、各グループに固有の不具合に気付き易い。例えば、上述した分類部115は、対応するユーザの一日あたりのアプリ動作期間の合計に応じて複数の履歴情報1211を複数のグループに分類するので、アプリの開発者は、アプリ動作期間が長い場合にユーザに生じる不具合や、アプリ動作期間が短い場合にユーザに生じる不具合をそれぞれ気付き易い。
Further, the
2.変形例
以上が実施形態の説明であるが、この実施形態の内容は以下のように変形し得る。また、以下の変形例を組み合わせてもよい。
2. Modification The above is the description of the embodiment, but the contents of this embodiment can be modified as follows. Further, the following modifications may be combined.
2−1.変形例1
上述した実施形態において、解析装置1の制御部11は、分類部115として機能していたが、この機能を有していなくてもよい。この場合、取得部111は、予め決められた1つのアプリについて記憶された履歴情報221の複製を、複数の端末2から取得すればよい。この構成であっても、解析装置1は、第1モジュールと、第1モジュールを呼び出した第2モジュールとの組み合わせごとに、第2モジュールが第1モジュールを呼び出した回数および呼び出した第1モジュールにより消費された電力量をユーザに知らせることができる。
2-1.
In the above-described embodiment, the
2−2.変形例2
上述した実施形態において、解析装置1の制御部11は、履歴データベース121に含まれる複数の履歴情報1211を対応するユーザの一日あたりのアプリ動作期間の合計ごとにグループに分類していたが、アプリ動作期間に代えてまたは加えて、アプリに使用される資源の種類ごとに履歴情報1211を分類してもよい。例えば、アプリがCPU、記憶部22、通信部23、測位部26、および撮像部27のうちいずれか複数の資源を使用する場合、制御部11は、これらの使用量(例えば使用時間や使用回数)を多変量解析して各履歴情報1211を複数のグループに分類してもよい。具体的には、k平均法などのアルゴリズムに従ってクラスタリングし履歴情報1211に反映された傾向ごとに、履歴情報1211を分類してもよい。すなわち、この場合、制御部11は、アプリケーションプログラムに使用される資源の種類ごとに履歴を複数のグループに分類する分類部115として機能する。なお、履歴情報1211ごとに、アプリ動作期間は異なるので、制御部11は、上記資源の使用量をアプリ動作期間で除した単位時間当たりの使用量を基に分類することとしてもよい。
2-2. Modification 2
In the above-described embodiment, the
2−3.変形例3
また、解析装置1の制御部11は、アプリ動作期間などに代えてまたは加えて、アプリが実行される環境ごとに履歴情報1211を分類してもよい。例えば、電車などに乗って移動するユーザに端末2が操作されているとき、端末2が通信部23を用いて通信を行うと、ユーザが静止しているときに比べて頻繁に基地局の接続切り替えが発生する。接続が切り替えられる度に、それを検知した端末2は新たな通信経路を探索する処理をバックグラウンドプロセスで実行するため、モジュールの呼び出しが行われる。したがって、接続切り替えの頻度に応じて履歴情報1211は異なった内容となる。この場合、制御部11は、接続切り替えの頻度を特定し、これらの履歴情報1211を、特定した頻度に応じて複数のグループに分類すればよい。例えば、単位時間当たりの接続切り替え回数が所定数より多い高速移動中、単位時間当たりの切り替え回数が所定数より少ない低速移動中、単位時間当たりの切り替えが発生しない静止中の3つのグループに分類する。すなわち、この場合、制御部11は、アプリケーションプログラムが実行される環境ごとに履歴を複数のグループに分類する分類部115として機能する。この構成によれば、履歴データベース121に含まれる複数の履歴情報1211は、高速又は低速で移動しながらアプリを実行させた場合の履歴と、移動せずにアプリを実行させた履歴とに分類されるので、アプリの開発者は、それぞれの使用環境に応じた不具合に気付き易くなる。
2-3. Modification 3
Further, the
2−4.変形例4
また、解析装置1の制御部11は、アプリ動作期間などに代えてまたは加えて、アプリの設定ごとに履歴情報1211を分類してもよい。アプリの設定とは、例えば、通信ネットワークとして、LTEと3Gの2方式のどちらの方式を優先させるかについての設定などである。設定データは、1つ以上の設定項目名と設定値の組からなり、上記の例では、設定項目名は「通信ネットワーク」、設定値は例えばLTEの場合は「1」、3Gの場合は「0」となる。これらの設定が複数ある場合には、複数の設定項目に対応する設定値を多変量解析して各履歴情報1211を複数のグループに分類してもよい。具体的には、k平均法などのアルゴリズムに従ってクラスタリングし履歴情報1211に反映された傾向ごとに、履歴情報1211を分類してもよい。すなわち、この場合、制御部11は、端末で実行されるアプリケーションプログラムの設定ごとに、履歴を複数のグループに分類する分類部115として機能する。この構成によれば、例えば複数の端末2において、各ユーザの設定に応じてその端末2で記憶される履歴を分類するので、アプリの開発者は、各ユーザの設定の好みに応じた不具合に気付き易くなる。
2-4. Modification 4
Further, the
2−5.変形例5
上述した実施形態において、解析装置1の制御部11は、算出された電力量と、集計された回数とを、第1モジュールおよび第2モジュールの組み合わせごとにそれぞれ出力する出力部114として機能していたが、第1モジュールを呼び出した第2モジュール、およびこの第2モジュールを呼び出した1以上の第3モジュールによる呼び出しの順序ごとに、消費された電力量と呼び出しの回数とを出力する出力部114として機能してもよい。
2-5.
In the above-described embodiment, the
例えば、モジュールMa、モジュールMb、およびモジュールMcが呼び出されるアプリの開発者が、モジュールMaからモジュールMcを直接呼び出す必要がないと考えたとする。この場合、アプリの開発者は、モジュールMaにモジュールMbを呼び出す機能を設け、かつ、モジュールMbにモジュールMcを呼び出す機能を設けるが、モジュールMaにモジュールMcを呼び出す機能を設けない。 For example, suppose that the developer of the application in which the module Ma, the module Mb, and the module Mc are called does not need to call the module Mc directly from the module Ma. In this case, the developer of the application provides the module Ma with a function of calling the module Mb and provides the module Mb with a function of calling the module Mc, but does not provide the module Ma with a function of calling the module Mc.
一方、実際のユーザがモジュールMaをアクティブにしているときにモジュールMcを起動させたいと思うことが多かったとすると、モジュールMaが表示の占有権を有しているときに、モジュールMcを直接呼び出せないため、ユーザは、いったんモジュールMbを起動し、このモジュールMbを経由してモジュールMcを起動する操作を頻繁に行うようになる。このようにアプリが設計されていると、ユーザが起動することを必要としていないモジュールMbの起動が頻繁に行われるため、無駄な電力が消費され、無駄な資源が使用されることとなる。しかし、このような実際のユーザによる使用態様が分からないため、アプリの開発者は、こういった設計の無駄に気付かない場合がある。 On the other hand, if an actual user often wants to activate the module Mc when the module Ma is active, the module Mc cannot be directly called when the module Ma has the exclusive right to display. Therefore, the user starts the module Mb once, and frequently performs an operation of starting the module Mc via the module Mb. When the application is designed in this manner, the module Mb that does not require the user to start is frequently started, so that useless power is consumed and useless resources are used. However, since the actual usage by the user is unknown, the application developer may not be aware of such a design waste.
制御部11が、上述した呼び出しの順序ごとに、消費された電力量と呼び出しの回数とを出力する出力部114として機能することにより、モジュールMa→モジュールMb→モジュールMcという順序での起動が頻繁に行われていることが分かると、アプリの開発者は、モジュールMbがモジュールMcの起動のためだけに起動されていることに気付くことができる。そして、この場合、アプリの開発者は、モジュールMaにモジュールMcを直接呼び出す機能を設けることでこの不具合は解消する。すなわち、この構成によれば、ユーザが現状の機能の制約から仕方なく編み出した複雑な操作手順にアプリの開発者が気付くことができ、それを簡素なものに変える設計変更をし易くなる。なお、上述した例において、制御部11は、3つのモジュールが呼び出された順序ごとに出力を行ったが、4つ以上のモジュールの呼び出し順序ごとに出力を行ってもよい。また、制御部11が監視する順序は、決められた時間内に生じる呼び出しに限ってもよい。
The
2−6.変形例6
上述した実施形態において、測位部26は、GPSによって端末2の位置を測定していたが、端末2の位置を、いわゆる位置登録を行うロケーションレジスタへの問い合わせによって特定してもよい。ここでいうロケーションレジスタは、無線機器である端末2が、移動通信網6に接続されたどの無線基地局のセル(通信圏内)にあるかを記憶する装置である。
2-6. Modification 6
In the embodiment described above, the
2−7.変形例7
解析装置1の制御部11によって実行されるプログラムは、磁気テープや磁気ディスクなどの磁気記録媒体、光ディスクなどの光記録媒体、光磁気記録媒体、半導体メモリなどの、コンピュータ装置が読み取り可能な記録媒体に記憶された状態で提供し得る。また、このプログラムを、インターネットのようなネットワーク経由でダウンロードさせることも可能である。なお、上記の制御部11によって例示した制御手段としてはCPU以外にも種々の装置が適用される場合があり、例えば、専用のプロセッサなどが用いられる。
2-7.
The program executed by the
2−8.変形例8
上述した実施形態において、制御部11により実現する算出部112は、取得部111により取得された履歴データベース121に基づいて、実行された第1モジュールにより消費された電力量を、その第1モジュールを呼び出した第2モジュールごとに算出していたが、電力量を算出し得る数値を特定するだけでもよい。すなわち、電力量を算出するとは、電力量を算出し得る数値を特定することを含む。例えば、携帯電話機のような端末2に供給される電圧が一定であると見なせる場合、制御部11は、電流を特定することにより、電力量を算出し得る。したがって、制御部11は、電力量に代えて第1モジュールにより使われた電流を、その第1モジュールを呼び出した第2モジュールごとに算出してもよい。
2-8. Modification 8
In the embodiment described above, the
1…解析装置、11…制御部、111…取得部、112…算出部、113…集計部、114…出力部、115…分類部、12…記憶部、121…履歴データベース、1211…履歴情報、122…分類情報、13…通信部、2…端末、21…制御部、22…記憶部、221…履歴情報、23…通信部、24…表示部、25…操作部、26…測位部、27…撮像部、3…通信回線、4…開発装置、5…サーバ装置、6…移動通信網、9…解析システム。
DESCRIPTION OF
Claims (10)
前記取得手段により取得された履歴情報に基づいて、第1モジュールにより消費された電力量を、当該第1モジュールを呼び出した第2モジュールごとに算出する算出手段と、
前記取得手段により取得された履歴情報に基づいて、前記第1モジュールが呼び出された回数を、前記第2モジュール、および当該第2モジュールの呼び出しの種類ごとに集計する集計手段と、
前記算出手段により算出された電力量と、前記集計手段により集計された回数とを、前記第1モジュールおよび前記第2モジュールの組み合わせごとにそれぞれ出力する出力手段と
を有することを特徴とする解析装置。 Acquisition means for acquiring history information including at least a history of modules called in application programs executed on a plurality of terminals;
Calculation means for calculating the amount of power consumed by the first module for each second module that has called the first module, based on the history information acquired by the acquisition means;
Based on the history information acquired by the acquisition means, the counting means for counting the number of times the first module is called for each type of call of the second module and the second module;
And an output unit that outputs the amount of power calculated by the calculation unit and the number of times totalized by the totalization unit for each combination of the first module and the second module. .
前記算出手段は、前記第1モジュールにより消費される電力量を、前記グループごとに算出し、
前記集計手段は、前記第1モジュールが呼び出された回数を、当該第1モジュールを呼び出した前記第2モジュール、当該第2モジュールの呼び出しの種類、および前記グループごとに集計する
ことを特徴とする請求項1に記載の解析装置。 Classification means for classifying history information acquired by the acquisition means into a plurality of groups;
The calculation means calculates the amount of power consumed by the first module for each group,
The counting means totals the number of times the first module has been called for each of the second module that has called the first module, the type of calling of the second module, and the group. Item 4. The analysis device according to Item 1.
ことを特徴とする請求項2に記載の解析装置。 The analysis device according to claim 2, wherein the classification unit classifies the history information common to users of the terminal into the plurality of groups based on an execution time of the application program within a predetermined period. .
ことを特徴とする請求項2または3に記載の解析装置。 The analysis device according to claim 2 or 3, wherein the classification unit classifies the history information into the plurality of groups based on a type of a resource used for the application program.
ことを特徴とする請求項2から4のいずれか1項に記載の解析装置。 The classification means classifies the history information into the plurality of groups based on a communication environment in which the terminal on which the application program is executed is placed. The analysis device according to item.
ことを特徴とする請求項2から5のいずれか1項に記載の解析装置。 The analysis device according to claim 2, wherein the classification unit classifies the history information into the plurality of groups based on a setting of an application program executed on the terminal. .
ことを特徴とする請求項1から6のいずれか1項に記載の解析装置。 The output means outputs the power amount and the number of times for each order of calling by the second module that calls the first module and one or more third modules that call the second module. The analyzing apparatus according to claim 1, wherein the analyzing apparatus is characterized in that:
前記解析装置が出力する出力内容に基づいて、前記第1モジュールおよび前記第2モジュールの組み合わせに応じた電力量および回数を有向グラフにより表示する表示装置と
を有する解析システム。 The analysis device according to any one of claims 1 to 7,
An analysis system comprising: a display device that displays a power amount and the number of times according to a combination of the first module and the second module as a directed graph based on output contents output from the analysis device.
複数の端末で実行されるアプリケーションプログラムにおいて呼び出されたモジュールの履歴を少なくとも含む履歴情報を取得する取得手段と、
前記取得手段により取得された履歴情報に基づいて、第1モジュールにより消費された電力量を、当該第1モジュールを呼び出した第2モジュールごとに算出する算出手段と、
前記取得手段により取得された履歴情報に基づいて、前記第1モジュールが呼び出された回数を、前記第2モジュール、および当該第2モジュールの呼び出しの種類ごとに集計する集計手段と、
前記算出手段により算出された電力量と、前記集計手段により集計された回数とを、前記第1モジュールおよび前記第2モジュールの組み合わせごとにそれぞれ出力する出力手段
として機能させるためのプログラム。 Computer
Acquisition means for acquiring history information including at least a history of modules called in application programs executed on a plurality of terminals;
Calculation means for calculating the amount of power consumed by the first module for each second module that has called the first module, based on the history information acquired by the acquisition means;
Based on the history information acquired by the acquisition means, the counting means for counting the number of times the first module is called for each type of call of the second module and the second module;
A program for functioning as output means for outputting the amount of power calculated by the calculation means and the number of times counted by the counting means for each combination of the first module and the second module.
算出手段が、前記取得ステップにおいて取得された履歴情報に基づいて、第1モジュールにより消費された電力量を、当該第1モジュールを呼び出した第2モジュールごとに算出する算出ステップと、
集計手段が、前記取得ステップにおいて取得された履歴情報に基づいて、前記第1モジュールが呼び出された回数を、前記第2モジュール、および当該第2モジュールの呼び出しの種類ごとに集計する集計ステップと、
出力手段が、前記算出ステップにおいて算出された電力量と、前記集計ステップにおいて集計された回数とを、前記第1モジュールおよび前記第2モジュールの組み合わせごとにそれぞれ出力する出力ステップと
を有することを特徴とする解析装置の制御方法。 An acquisition step for acquiring history information including at least a history of modules called in an application program executed by a plurality of terminals;
A calculating step in which the calculating means calculates the amount of power consumed by the first module for each second module that has called the first module, based on the history information acquired in the acquiring step;
A counting step in which the counting means counts the number of times the first module has been called based on the history information acquired in the acquiring step for each type of the second module and the second module called;
The output means includes an output step of outputting the amount of power calculated in the calculation step and the number of times counted in the counting step for each combination of the first module and the second module. A control method of the analysis device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013247790A JP6228824B2 (en) | 2013-11-29 | 2013-11-29 | Analysis device, analysis system, program, and control method of analysis device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013247790A JP6228824B2 (en) | 2013-11-29 | 2013-11-29 | Analysis device, analysis system, program, and control method of analysis device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015106268A JP2015106268A (en) | 2015-06-08 |
JP6228824B2 true JP6228824B2 (en) | 2017-11-08 |
Family
ID=53436332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013247790A Active JP6228824B2 (en) | 2013-11-29 | 2013-11-29 | Analysis device, analysis system, program, and control method of analysis device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6228824B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7218797B2 (en) | 2019-04-01 | 2023-02-07 | 富士通株式会社 | Information processing device and API usage history display program |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5045122B2 (en) * | 2007-01-29 | 2012-10-10 | 富士通株式会社 | Program evaluation program, program evaluation apparatus, and program evaluation method |
JP5787259B2 (en) * | 2011-02-23 | 2015-09-30 | 株式会社Nttドコモ | Power consumption analysis system and application development tools |
-
2013
- 2013-11-29 JP JP2013247790A patent/JP6228824B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2015106268A (en) | 2015-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3502880B1 (en) | Method for preloading application, storage medium, and terminal device | |
EP3502878B1 (en) | Method for preloading application and terminal device | |
US11164097B2 (en) | Method for preloading application, storage medium, and terminal device | |
EP3242203B1 (en) | Method for operating a display device and display device | |
US11748224B2 (en) | Detection and analysis of energy consumption of software applications | |
CN107798108B (en) | Asynchronous task query method and device | |
JP2017504121A5 (en) | ||
US8825761B2 (en) | Systems and methods for sharing group status within a social network | |
CN111078556B (en) | Application testing method and device | |
CN109343926A (en) | Application program image target display methods, device, terminal and storage medium | |
CN107390983A (en) | Service order performs method, client and storage medium | |
CN108334530B (en) | User behavior information analysis method, device and storage medium | |
CN114615177A (en) | Load detection method and device of cloud platform, electronic equipment and storage medium | |
JP6228824B2 (en) | Analysis device, analysis system, program, and control method of analysis device | |
CN112181570A (en) | Background task display method and device and electronic equipment | |
KR102106484B1 (en) | Information display method, terminal, and server | |
CN105262829B (en) | Geographical position monitoring method and system | |
CN110807330B (en) | Semantic understanding model evaluation method, device and storage medium | |
CN113467867A (en) | Information processing method, information processing device, electronic equipment and storage medium | |
CN112256948A (en) | Data processing method and device and electronic equipment | |
CN117097635B (en) | Method, device, storage medium and equipment for calling link sampling | |
CN114595231B (en) | Database table generation method and device, electronic equipment and storage medium | |
CN115269697A (en) | Product data information conversion method and device, storage medium and electronic equipment | |
CN115103068A (en) | Outbound list generation method and device, storage medium and electronic equipment | |
Almasri et al. | Adding Energy Star Rating Schema to Android Applications on Google Play Store an Example of a Preventive Power Saving Model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160805 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170524 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170606 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170710 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20171010 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171016 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6228824 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |