KR102653900B1 - Electronic apparatus and providing information method thereof - Google Patents
Electronic apparatus and providing information method thereof Download PDFInfo
- Publication number
- KR102653900B1 KR102653900B1 KR1020230101991A KR20230101991A KR102653900B1 KR 102653900 B1 KR102653900 B1 KR 102653900B1 KR 1020230101991 A KR1020230101991 A KR 1020230101991A KR 20230101991 A KR20230101991 A KR 20230101991A KR 102653900 B1 KR102653900 B1 KR 102653900B1
- Authority
- KR
- South Korea
- Prior art keywords
- component
- type
- view
- components
- application
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000001914 filtration Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 15
- 230000010354 integration Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000009877 rendering Methods 0.000 description 9
- 238000013461 design Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000007774 longterm Effects 0.000 description 2
- 241000711573 Coronaviridae Species 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/101—Collaborative creation, e.g. joint development of products or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0641—Shopping interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Databases & Information Systems (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- General Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Human Computer Interaction (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Development Economics (AREA)
- Stored Programmes (AREA)
Abstract
전자 장치의 정보 제공 방법이 제공된다. 정보 제공 방법은 애플리케이션에 관한 정보를 획득하는 단계; 상기 애플리케이션에 관한 정보에 기초하여, 상기 애플리케이션의 제1 도메인 내 하나 이상의 페이지에 대응하는 복수의 컴포넌트들 간의 관계 그래프를 생성하는 단계; 상기 복수의 컴포넌트들 중 제1 타입의 적어도 하나의 제1 컴포넌트, 제2 타입의 적어도 하나의 제2 컴포넌트 및 제3 타입의 적어도 하나의 제3 컴포넌트를 확인하는 단계; 상기 제1 도메인에서의 상기 적어도 하나의 제1 컴포넌트의 커버리지(coverage) 비율을 확인하는 단계; 및 상기 커버리지 비율에 관한 정보를 제공하는 단계를 포함할 수 있다.A method of providing information by an electronic device is provided. The information provision method includes obtaining information about an application; Based on information about the application, generating a relationship graph between a plurality of components corresponding to one or more pages in a first domain of the application; identifying at least one first component of a first type, at least one second component of a second type, and at least one third component of a third type among the plurality of components; Confirming a coverage ratio of the at least one first component in the first domain; And it may include providing information about the coverage ratio.
Description
본 개시는 애플리케이션의 특정 페이지 또는 특정 도메인에서 사용된 설정된 컴포넌트의 비율에 관한 정보를 제공하기 위한 전자 장치 및 그 제어 방법에 관한 것이다.The present disclosure relates to an electronic device and a control method thereof for providing information about the ratio of set components used in a specific page or specific domain of an application.
소비자가 오프라인 주문 아닌 온라인 주문을 이용하여 아이템을 구매하는 추세가 증가하고 있으며, 최근 발생한 코로나로 인하여 이러한 경향성은 더욱 증가하고 있다. The trend of consumers purchasing items using online ordering rather than offline ordering is increasing, and this trend is further increasing due to the recent coronavirus outbreak.
소비자들은 각자 단말에 어플리케이션을 설치할 수 있고, 어플리케이션을 이용하여 아이템을 구매할 수 있다. 이와 같이 소비자들이 이용하는 어플리케이션은 복수이며, 복수의 회사에서 관련 서비스를 제공하며 경쟁하고 있다. 이런 경쟁 상황에서 다른 회사에서 제공하는 서비스 보다 소비자들의 관심을 유지하기 위해 어플리케이션에서 제공되는 페이지의 디자인이 개선될 필요가 있다.Consumers can install the application on their respective devices and purchase items using the application. As such, there are multiple applications used by consumers, and multiple companies are competing by providing related services. In this competitive situation, the design of the pages provided by the application needs to be improved to maintain consumers' interest compared to services provided by other companies.
어플리케이션에서 복수의 페이지가 제공되며, 각 페이지는 복수의 구성요소들로 디자인될 수 있다. 이때, 복수의 페이지에서 공통적으로 제공되는 구성요소들의 디자인이 체계적으로 관리될 경우, 소비자들의 User Experience(UX) 증가로 인하여 어플리케이션 이용도가 증가할 수 있다.Multiple pages are provided in the application, and each page can be designed with multiple components. At this time, if the design of components commonly provided on multiple pages is systematically managed, application usability can increase due to an increase in consumers' user experience (UX).
따라서, 작업자에게 어플리케이션에서 제공되는 복수의 페이지에 포함되는 복수의 구성요소들의 디자인이 일관되게 렌더링 되었는지 여부에 관한 정보가 제공될 필요가 있다.Therefore, it is necessary to provide workers with information regarding whether the design of a plurality of components included in a plurality of pages provided in an application has been consistently rendered.
개시된 실시 예들은 전자 장치 및 그의 정보 제공 방법을 제공하고자 한다. 보다 구체적으로는, 애플리케이션의 특정 페이지 또는 특정 도메인에서 사용된 설정된 컴포넌트의 비율에 관한 정보를 제공하기 위한 전자 장치 및 그 제어 방법을 제공하는 것을 목적으로 한다.The disclosed embodiments seek to provide an electronic device and a method of providing information thereof. More specifically, the object is to provide an electronic device and a control method for providing information about the ratio of set components used in a specific page or specific domain of an application.
본 실시 예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 이하의 실시 예들로부터 또 다른 기술적 과제들이 유추될 수 있다.The technical challenges that this embodiment aims to achieve are not limited to the technical challenges described above, and other technical challenges can be inferred from the following embodiments.
본 개시의 일 측면은 애플리케이션에 관한 정보를 획득하는 단계; 상기 애플리케이션에 관한 정보에 기초하여, 상기 애플리케이션의 제1 도메인 내 하나 이상의 페이지에 대응하는 복수의 컴포넌트들 간의 관계 그래프를 생성하는 단계; 상기 복수의 컴포넌트들 중 제1 타입의 적어도 하나의 제1 컴포넌트, 제2 타입의 적어도 하나의 제2 컴포넌트 및 제3 타입의 적어도 하나의 제3 컴포넌트를 확인하는 단계; 상기 제1 도메인에서의 상기 적어도 하나의 제1 컴포넌트의 커버리지(coverage) 비율을 확인하는 단계; 및 상기 커버리지 비율에 관한 정보를 제공하는 단계를 포함하는, 정보 제공 방법을 제공할 수 있다.One aspect of the present disclosure includes obtaining information about an application; Based on information about the application, generating a relationship graph between a plurality of components corresponding to one or more pages in a first domain of the application; identifying at least one first component of a first type, at least one second component of a second type, and at least one third component of a third type among the plurality of components; Confirming a coverage ratio of the at least one first component in the first domain; and providing information regarding the coverage ratio.
또한, 본 개시의 일 실시 예에서 상기 제1 타입의 컴포넌트는 설정된 하나 이상의 컴포넌트에 매칭되는 컴포넌트를 포함하고, 상기 제2 타입의 컴포넌트는 상기 하나 이상의 컴포넌트에 매칭되지 않으나 상기 하나 이상의 컴포넌트로 대체되도록 설정된 컴포넌트를 포함하고, 상기 제3 타입의 컴포넌트는 상기 하나 이상의 컴포넌트에 매칭되지 않고 상기 하나 이상의 컴포넌트로 대체되지 않도록 설정된 컴포넌트를 포함하는, 정보 제공 방법을 제공할 수 있다.In addition, in one embodiment of the present disclosure, the first type of component includes a component that matches one or more set components, and the second type of component does not match the one or more components but is replaced with the one or more components. A method of providing information may be provided, including a set component, wherein the third type component does not match the one or more components and includes a component set not to be replaced by the one or more components.
또한, 본 개시의 일 실시 예에서 상기 커버리지 비율을 확인하는 단계는, 상기 복수의 컴포넌트들 중 상기 적어도 하나의 제3 컴포넌트를 필터링(filtering out)하는 단계; 상기 적어도 하나의 제1 컴포넌트의 수 및 상기 적어도 하나의 제2 컴포넌트의 수를 확인하는 단계; 및 상기 적어도 하나의 제1 컴포넌트의 수 및 상기 적어도 하나의 제2 컴포넌트의 수에 기초하여, 상기 커버리지 비율을 결정하는 단계를 포함하는, 정보 제공 방법을 제공할 수 있다.Additionally, in one embodiment of the present disclosure, checking the coverage ratio includes filtering out the at least one third component among the plurality of components; confirming the number of the at least one first component and the number of the at least one second component; and determining the coverage ratio based on the number of the at least one first component and the number of the at least one second component.
또한, 본 개시의 일 실시 예에서 상기 애플리케이션에 관한 정보는 XML(extensible markup language) 파일을 포함하고, 상기 복수의 컴포넌트들 간의 관계 그래프를 생성하는 단계는, 상기 XML 파일을 파싱함으로써, 상기 하나 이상의 페이지에 표시되는 복수의 뷰들의 트리 뷰(tree view)를 생성하는 단계를 포함하고, 상기 적어도 하나의 제1 컴포넌트, 상기 적어도 하나의 제2 컴포넌트 및 상기 적어도 하나의 제3 컴포넌트를 확인하는 단계는, 상기 복수의 뷰들 중 상기 제1 타입의 적어도 하나의 제1 뷰, 상기 제2 타입의 적어도 하나의 제2 뷰 및 상기 제3 타입의 적어도 하나의 제3 뷰를 확인하는 단계를 포함하는, 정보 제공 방법을 제공할 수 있다.In addition, in one embodiment of the present disclosure, the information about the application includes an extensible markup language (XML) file, and the step of generating a relationship graph between the plurality of components includes parsing the XML file, Generating a tree view of a plurality of views displayed on a page, wherein identifying the at least one first component, the at least one second component, and the at least one third component comprises: , identifying at least one first view of the first type, at least one second view of the second type, and at least one third view of the third type among the plurality of views. A method of provision can be provided.
또한, 본 개시의 일 실시 예에서 상기 적어도 하나의 제1 컴포넌트의 수 및 상기 적어도 하나의 제2 컴포넌트의 수를 확인하는 단계는, 상기 적어도 하나의 제1 뷰의 수 및 상기 적어도 하나의 제2 뷰의 수를 확인하는 단계를 포함하고, 상기 커버리지 비율은, 상기 적어도 하나의 제1 뷰의 수를 상기 적어도 하나의 제1 뷰의 수와 상기 적어도 하나의 제2 뷰의 수의 합으로 나눔으로써 획득된 값으로 결정되는, 정보 제공 방법을 제공할 수 있다.Additionally, in one embodiment of the present disclosure, the step of checking the number of the at least one first component and the number of the at least one second component includes the number of the at least one first view and the number of the at least one second and determining the number of views, wherein the coverage ratio is calculated by dividing the number of the at least one first view by the sum of the number of the at least one first view and the number of the at least one second view. A method of providing information determined by the obtained value may be provided.
또한, 본 개시의 일 실시 예에서 상기 커버리지 비율에 관한 정보를 제공하는 단계는, 상기 복수의 뷰들의 트리 뷰에 기초하여, 상기 적어도 하나의 제2 뷰의 종속 관계에 관한 정보를 제공하는 단계를 포함하는, 정보 제공 방법을 제공할 수 있다.In addition, in one embodiment of the present disclosure, providing information about the coverage ratio includes providing information about a dependency relationship of the at least one second view based on the tree view of the plurality of views. It is possible to provide a method of providing information, including:
또한, 본 개시의 일 실시 예에서 상기 애플리케이션에 관한 정보는 애플리케이션에 관한 코드를 포함하고, 상기 복수의 컴포넌트들 간의 관계 그래프를 생성하는 단계는, 상기 애플리케이션에 관한 코드를 파싱함으로써, 상기 하나 이상의 페이지에 대응하는 복수의 노드들의 호출 그래프(call graph)를 생성하는 단계를 포함하고, 상기 적어도 하나의 제1 컴포넌트, 상기 적어도 하나의 제2 컴포넌트 및 상기 적어도 하나의 제3 컴포넌트를 확인하는 단계는, 상기 복수의 노드들 중 상기 제1 타입의 적어도 하나의 제1 노드, 상기 제2 타입의 적어도 하나의 제2 노드 및 상기 제3 타입의 적어도 하나의 제3 노드를 확인하는 단계를 포함하는, 정보 제공 방법을 제공할 수 있다.In addition, in one embodiment of the present disclosure, the information about the application includes code about the application, and the step of generating a relationship graph between the plurality of components includes parsing the code about the application, Generating a call graph of a plurality of nodes corresponding to , wherein identifying the at least one first component, the at least one second component, and the at least one third component comprises: Identifying at least one first node of the first type, at least one second node of the second type, and at least one third node of the third type among the plurality of nodes. A method of provision can be provided.
또한, 본 개시의 일 실시 예에서 상기 적어도 하나의 제1 컴포넌트의 수 및 상기 적어도 하나의 제2 컴포넌트의 수를 확인하는 단계는, 상기 적어도 하나의 제1 노드의 호출 횟수 및 상기 적어도 하나의 제2 노드의 호출 횟수를 확인하는 단계를 포함하고, 상기 커버리지 비율은, 상기 적어도 하나의 제1 노드의 호출 횟수를 상기 적어도 하나의 제1 노드의 호출 횟수와 상기 적어도 하나의 제2 노드의 호출 횟수의 합으로 나눔으로써 획득된 값으로 결정되는, 정보 제공 방법을 제공할 수 있다.Additionally, in one embodiment of the present disclosure, the step of checking the number of the at least one first component and the number of the at least one second component includes the number of calls of the at least one first node and the number of the at least one first node. 2. Comprising: checking the number of calls of the node, wherein the coverage ratio is calculated by dividing the number of calls of the at least one first node by the number of calls of the at least one first node and the number of calls of the at least one second node. It is possible to provide a method of providing information, which is determined by the value obtained by dividing by the sum of .
또한, 본 개시의 일 실시 예에서 상기 커버리지 비율에 관한 정보를 제공하는 단계는, 상기 복수의 노드들의 호출 그래프에 기초하여, 상기 적어도 하나의 제2 노드의 호출 관계에 관한 정보를 제공하는 단계를 더 포함하는, 정보 제공 방법을 제공할 수 있다.In addition, in one embodiment of the present disclosure, providing information about the coverage ratio includes providing information about a calling relationship of the at least one second node based on a call graph of the plurality of nodes. A further method of providing information may be provided.
또한, 본 개시의 일 실시 예에서 상기 커버리지 비율은, 상기 적어도 하나의 제1 컴포넌트 및 상기 적어도 하나의 제2 컴포넌트 각각이 상기 하나 이상의 페이지에서 차지하는 면적; 상기 하나 이상의 페이지 내 상기 적어도 하나의 제1 컴포넌트 및 상기 적어도 하나의 제2 컴포넌트 각각의 위치; 및 상기 적어도 하나의 제1 컴포넌트 및 상기 적어도 하나의 제2 컴포넌트 각각이 사용자에게 노출되는 시간 중 적어도 하나를 더 고려하여 결정되는, 정보 제공 방법을 제공할 수 있다.Additionally, in one embodiment of the present disclosure, the coverage ratio may include an area occupied by each of the at least one first component and the at least one second component in the one or more pages; A location of each of the at least one first component and the at least one second component within the one or more pages; and a time at which each of the at least one first component and the at least one second component are exposed to the user.
또한, 본 개시의 일 실시 예에서 상기 커버리지 비율은, 상기 적어도 하나의 제1 컴포넌트의 수가 많을수록, 상기 적어도 하나의 제1 컴포넌트가 차지하는 면적이 클수록, 상기 적어도 하나의 제1 컴포넌트의 위치가 상기 하나 이상의 페이지에 중앙에 가까울수록 또는 상기 적어도 하나의 제1 컴포넌트가 노출되는 시간이 길수록, 보다 높게 결정되는, 정보 제공 방법을 제공할 수 있다.In addition, in one embodiment of the present disclosure, the coverage ratio increases as the number of the at least one first component increases, the area occupied by the at least one first component increases, and the location of the at least one first component becomes the one. The closer the page is to the center or the longer the exposure time of the at least one first component, the higher the determination. A method of providing information can be provided.
본 개시의 다른 측면은 트랜시버(transceiver), 메모리 및 프로세서(processor)를 포함하고, 상기 프로세서는, 애플리케이션에 관한 정보를 획득하고, 상기 애플리케이션에 관한 정보에 기초하여, 상기 애플리케이션의 제1 도메인 내 하나 이상의 페이지에 대응하는 복수의 컴포넌트들 간의 관계 그래프를 생성하고, 상기 복수의 컴포넌트들 중 제1 타입의 적어도 하나의 제1 컴포넌트, 제2 타입의 적어도 하나의 제2 컴포넌트 및 제3 타입의 적어도 하나의 제3 컴포넌트를 확인하고, 상기 제1 도메인에서의 상기 적어도 하나의 제1 컴포넌트의 커버리지(coverage) 비율을 확인하고, 상기 커버리지 비율에 관한 정보를 제공하는, 전자 장치를 제공할 수 있다.Another aspect of the present disclosure includes a transceiver, a memory, and a processor, wherein the processor obtains information about an application and, based on the information about the application, determines one of the first domains of the application. Generate a relationship graph between a plurality of components corresponding to one or more pages, and among the plurality of components, at least one first component of a first type, at least one second component of a second type, and at least one of a third type An electronic device can be provided that checks a third component, checks a coverage ratio of the at least one first component in the first domain, and provides information about the coverage ratio.
본 개시의 또 다른 측면은 전자 장치에 의해 수행되는 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체를 제공할 수 있다.Another aspect of the present disclosure may provide a computer-readable recording medium on which a program for implementing a method performed by an electronic device is recorded.
기타 실시 예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Specific details of other embodiments are included in the detailed description and drawings.
제안되는 실시 예에 따를 경우 다음과 같은 효과를 하나 혹은 그 이상 기대할 수 있다. If you follow the proposed embodiment, one or more of the following effects can be expected.
본 명세서의 실시 예에 의할 경우, 어플리케이션을 통해 제공되는 도메인의 복수의 페이지들을 관리하는 복수의 작업자들이 각 페이지를 효율적으로 관리할 수 있다. 구체적으로, 각 페이지를 관리하는 작업자들은 설정된 사용자 인터페이스 컴포넌트를 이용하여 페이지를 디자인할 수 있고, 어플리케이션에서 제공되는 복수의 페이지들의 디자인 일관성이 향상될 수 있다.According to the embodiment of the present specification, a plurality of workers who manage a plurality of pages of a domain provided through an application can efficiently manage each page. Specifically, workers who manage each page can design the page using set user interface components, and design consistency of multiple pages provided by the application can be improved.
또한, 본 명세서의 실시 예에 의할 경우, 전자 장치가 애플리케이션에 도메인에 사용된 컴포넌트들 중 설정된 리스트에 대응하는 컴포넌트의 비율에 관한 정보를 제공함으로서, 작업자가 보다 편리하게 도메인의 컴포넌트들을 통일성 있게 디자인할 수 있다. 이에 따라, 전체 페이지가 일관되면서 체계적으로 관리되어 어플리케이션을 이용하는 사용자의 사용자 경험(user experience, UX)가 개선될 수 있다.In addition, according to the embodiment of the present specification, the electronic device provides the application with information about the ratio of components corresponding to the set list among the components used in the domain, so that the operator can more conveniently use the components of the domain in a unified manner. You can design it. Accordingly, the entire page can be managed consistently and systematically, improving the user experience (UX) of users using the application.
또한, 본 명세서의 실시 예에 의할 경우, 전자 장치가 설정된 하나 이상의 컴포넌트로 대체되어야 하는 타입의 컴포넌트의 렌더링 경로 또는 호출 경로에 관한 정보를 제공함으로써, 작업자는 해당 컴포넌트를 보다 쉽게 대체할 수 있다.In addition, according to the embodiment of the present specification, by providing information about the rendering path or calling path of the type of component that must be replaced with one or more components for which the electronic device is set, the operator can more easily replace the corresponding component. .
발명의 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 당해 기술 분야의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effect of the invention is not limited to the effects mentioned above, and other effects not mentioned can be clearly understood by those skilled in the art from the description of the claims.
도 1은 일 실시 예에 따른 시스템을 나타낸다.
도 2는 일 실시 예에 따라 전자 장치가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 제공하는 과정을 설명하기 위한 도면이다.
도 3은 일 실시 예에 따라 전자 장치가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 제공하는 과정을 설명하기 위한 도면이다.
도 4는 일 실시 예에 따라 전자 장치가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 제공하는 과정을 설명하기 위한 도면이다.
도 5는 일 실시 예에 따라 전자 장치가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율을 결정하는 과정을 설명하기 위한 도면이다.
도 6a 내지 도 6c는 일 실시 예에 따라 전자 장치가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율을 결정하는 과정을 설명하기 위한 도면이다.
도 7a 내지 도 7b는 일 실시 예에 따라 전자 장치가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율을 결정하는 과정을 설명하기 위한 도면이다.
도 8은 일 실시 예에 따라 전자 장치가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율을 결정하는 과정을 설명하기 위한 도면이다.
도 9는 일 실시 예에 따라 전자 장치가 제공하는 사용자 인터페이스의 일 예를 도시한다.
도 10은 일 실시 예에 따른 전자 장치의 정보 제공 방법의 흐름도를 나타낸다.
도 11은 일 실시 예에 따른 전자 장치의 블록도를 나타낸다.1 shows a system according to one embodiment.
FIG. 2 is a diagram illustrating a process in which an electronic device provides information about the coverage ratio of a set component in at least one domain of an application, according to an embodiment.
FIG. 3 is a diagram illustrating a process in which an electronic device provides information about the coverage ratio of a set component in at least one domain of an application, according to an embodiment.
FIG. 4 is a diagram illustrating a process in which an electronic device provides information about the coverage ratio of a set component in at least one domain of an application, according to an embodiment.
FIG. 5 is a diagram illustrating a process in which an electronic device determines a coverage ratio of a set component in at least one domain of an application, according to an embodiment.
FIGS. 6A to 6C are diagrams for explaining a process in which an electronic device determines a coverage ratio of a set component in at least one domain of an application, according to an embodiment.
FIGS. 7A and 7B are diagrams illustrating a process in which an electronic device determines a coverage ratio of a set component in at least one domain of an application, according to an embodiment.
FIG. 8 is a diagram illustrating a process in which an electronic device determines a coverage ratio of a set component in at least one domain of an application, according to an embodiment.
FIG. 9 illustrates an example of a user interface provided by an electronic device, according to an embodiment.
Figure 10 shows a flowchart of a method for providing information by an electronic device according to an embodiment.
Figure 11 shows a block diagram of an electronic device according to an embodiment.
실시 예들에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.The terms used in the embodiments are general terms that are currently widely used as much as possible while considering the functions in the present disclosure, but this may vary depending on the intention or precedent of a person working in the art, the emergence of new technology, etc. In addition, in certain cases, there are terms arbitrarily selected by the applicant, and in this case, the meaning will be described in detail in the relevant description. Therefore, the terms used in this disclosure should be defined based on the meaning of the term and the overall content of this disclosure, rather than simply the name of the term.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. When it is said that a part "includes" a certain element throughout the specification, this means that, unless specifically stated to the contrary, it does not exclude other elements but may further include other elements.
명세서 전체에서 기재된 "a, b, 및 c 중 적어도 하나"의 표현은, 'a 단독', 'b 단독', 'c 단독', 'a 및 b', 'a 및 c', 'b 및 c', 또는 'a, b, 및 c 모두'를 포괄할 수 있다.The expression “at least one of a, b, and c” used throughout the specification means ‘a alone’, ‘b alone’, ‘c alone’, ‘a and b’, ‘a and c’, ‘b and c ', or 'all of a, b, and c'.
이하에서 언급되는 "단말"은 네트워크를 통해 서버나 타 단말에 접속할 수 있는 컴퓨터나 휴대용 단말로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop) 등을 포함하고, 휴대용 단말은 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, IMT(International Mobile Telecommunication), CDMA(Code Division Multiple Access), W-CDMA(W-Code Division Multiple Access), LTE(Long Term Evolution) 등의 통신 기반 단말, 스마트폰, 태블릿 PC 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.The “terminal” mentioned below may be implemented as a computer or portable terminal that can connect to a server or other terminal through a network. Here, the computer includes, for example, a laptop, desktop, laptop, etc. equipped with a web browser, and the portable terminal is, for example, a wireless communication device that guarantees portability and mobility. , all types of communication-based terminals such as IMT (International Mobile Telecommunication), CDMA (Code Division Multiple Access), W-CDMA (W-Code Division Multiple Access), and LTE (Long Term Evolution), smartphones, tablet PCs, etc. It may include a handheld-based wireless communication device.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시 예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다.Below, with reference to the attached drawings, embodiments of the present disclosure will be described in detail so that those skilled in the art can easily practice them. However, the present disclosure may be implemented in many different forms and is not limited to the embodiments described herein.
이하에서는 도면을 참조하여 본 개시의 실시 예들을 상세히 설명한다. Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings.
도 1은 일 실시 예에 따른 시스템을 나타낸다.1 shows a system according to one embodiment.
도 1을 참조하면, 시스템은 전자 장치(100), 사용자 단말(120), 작업자 단말(140) 및 네트워크(160) 중에서 적어도 하나를 포함할 수 있다. 한편, 도 1에 도시된 시스템은 본 실시 예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 1에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시 예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.Referring to FIG. 1 , the system may include at least one of an
전자 장치(100)는 다양한 정보를 구성하여 제공하는 장치이다. 전자 장치(100)는 구성된 정보를 웹 페이지 또는 애플리케이션 화면 등으로 제공하거나, 제공 받는 단말에서 웹 페이지 또는 애플리케이션 화면 등으로 표시할 수 있는 형태의 정보로 제공할 수 있다.The
일 실시 예에 따르면, 전자 장치(100)는 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 제공할 수 있다. 예를 들어, 전자 장치(100)는 애플리케이션에 관한 정보를 획득하고, 애플리케이션에 관한 정보에 기초하여, 애플리케이션의 제1 도메인 내 하나 이상의 페이지에 대응하는 복수의 컴포넌트들 간의 관계 그래프를 생성할 수 있다. 이후, 전자 장치(100)는 복수의 컴포넌트들 중 제1 타입의 적어도 하나의 제1 컴포넌트 및 제2 타입의 적어도 하나의 제2 컴포넌트를 확인하고, 제1 도메인에서의 적어도 하나의 제1 컴포넌트의 커버리지 비율을 확인하며, 커버리지 비율에 관한 정보를 제공할 수 있다.According to one embodiment, the
사용자 단말(120)은 사용자들 각각이 사용하는 단말로서, 사용자들은 각자의 단말(120)을 이용하여 네트워크(160)에 의해 제공되는 서비스에 접근할 수 있다. 예를 들어, 전자 장치(100)는 다양한 아이템을 주문할 수 있는 플랫폼 또는 어플리케이션을 사용자 단말(120)에 제공할 수 있다. 사용자들은 각자의 사용자 단말(120)에 설치된 어플리케이션 등을 이용하여, 다양한 아이템을 주문할 수 있다.The
작업자 단말(140)은 작업자들 각각이 사용하는 단말로서, 작업자들은 각자의 단말(140)을 이용하여, 애플리케이션의 하나 이상의 도메인에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 확인할 수 있다. 예를 들어, 작업자 단말(140)은 전자 장치(100)로부터 수신한 정보에 기초하여, 애플리케이션의 하나 이상의 도메인 각각에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 표시하는 사용자 인터페이스를 제공할 수 있다.The
사용자 단말(120) 및 작업자 단말(140)과 전자 장치(100)는 네트워크(160) 내에서 서로 통신할 수 있다. 네트워크(160)는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 부가가치 통신망(Value Added Network; VAN), 이동 통신망(mobile radio communication network), 위성 통신망 및 이들의 상호 조합을 포함하며, 도 1에 도시된 각 네트워크 구성 주체가 서로 원활하게 통신을 할 수 있도록 하는 포괄적인 의미의 데이터 통신망이며, 유선 인터넷, 무선 인터넷 및 모바일 무선 통신망을 포함할 수 있다. 무선 통신은 예를 들어, 무선 랜(Wi-Fi), 블루투스, 블루투스 저 에너지(Bluetooth low energy), 지그비, WFD(Wi-Fi Direct), UWB(ultra wideband), 적외선 통신(IrDA, infrared Data Association), NFC(Near Field Communication) 등이 있을 수 있으나, 이에 한정되는 것은 아니다.The
도 2는 일 실시 예에 따라 전자 장치(100)가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 제공하는 과정을 설명하기 위한 도면이다.FIG. 2 is a diagram illustrating a process in which the
일 실시 예에 따르면, 전자 장치(100)는 애플리케이션에 관한 정보를 획득할 수 있다. 보다 구체적으로, 전자 장치(100)는 애플리케이션의 적어도 하나의 도메인을 구현하기 위한 코드 또는 파일을 획득할 수 있다.According to one embodiment, the
예를 들어, 전자 장치(100)는 애플리케이션의 제1 도메인을 구현하기 위한 XML(extensible markup language) 파일(230), 애플리케이션에 관한 코드(240) 및 JAR(java archive) 파일(250) 중 적어도 하나를 획득할 수 있다. 이때, 제1 도메인은 XML 파일(230), 애플리케이션에 관한 코드(240) 또는 JAR 파일(250) 각각에 의해 구현되거나, XML 파일(230), 애플리케이션에 관한 코드(240) 및 JAR 파일(250) 중 둘 이상의 조합에 의해 구현될 수 있다.For example, the
한편, 애플리케이션에 관한 코드(240)는 java 코드 또는 kotlin 코드를 포함할 수 있으나, 애플리케이션에 관한 코드(240)에 포함되는 코드의 타입은 전술한 바에 한정되지 않는다.Meanwhile, the
일 실시 예에 따르면, 전자 장치(100)는 애플리케이션에 관한 정보에 기초하여 애플리케이션의 적어도 하나의 도메인 내 하나 이상의 페이지에 대응하는 복수의 컴포넌트들 간의 관계 그래프를 생성할 수 있다.According to one embodiment, the
예를 들어, XML 분석 모듈(200)은 획득한 XML 파일(230)을 파싱함으로써, 제1 도메인 내 하나 이상의 페이지에 표시되는 복수의 뷰들의 트리 뷰를 생성할 수 있다. 이때, 뷰(view)는 디스플레이에 표시되는 사용자 인터페이스의 기본적인 구성요소로서, 텍스트, 이미지, 입력 필드, 아이콘 또는 버튼 등 다양한 타입의 사용자 인터페이스 컴포넌트를 포함할 수 있다.For example, the
또다른 예를 들어, 코드 분석 모듈(210)은 획득한 애플리케이션에 관한 코드(240)를 파싱함으로써, 제1 도메인 내 하나 이상의 페이지에 대응하는 복수의 노드들의 호출 그래프를 생성할 수 있다. 이때, 노드(node)는 애플리케이션에 관한 코드(240)에 포함된 함수, 클래스 또는 메소드 등을 포함할 수 있다.As another example, the
일 실시 예에 따르면, 전자 장치(100)는 복수의 컴포넌트들 중 제1 타입의 컴포넌트 및 제2 타입의 컴포넌트를 확인할 수 있다. 보다 구체적으로, 전자 장치(100)는 복수의 컴포넌트들 중 설정된 하나 이상의 컴포넌트에 매칭되는 컴포넌트를 제1 타입의 컴포넌트로 확인할 수 있다. 또한, 전자 장치(100)는 복수의 컴포넌트들 중 하나 이상의 컴포넌트에 매칭되지 않으나 하나 이상의 컴포넌트로 대체되도록 설정된 컴포넌트를 제2 타입의 컴포넌트로 확인할 수 있다.According to one embodiment, the
예를 들어, XML 분석 모듈(200)은 복수의 뷰들 중 설정된 하나 이상의 컴포넌트에 매칭되는 뷰를 제1 타입의 뷰로 확인할 수 있고, 하나 이상의 컴포넌트에 매칭되지 않으나 하나 이상의 컴포넌트로 대체되도록 설정된 뷰를 제2 타입의 뷰로 확인할 수 있다.For example, the
또다른 예를 들어, 코드 분석 모듈(210)은 복수의 노드들 중 설정된 하나 이상의 컴포넌트에 매칭되는 노드를 제1 타입의 노드로 확인할 수 있고, 하나 이상의 컴포넌트에 매칭되지 않으나 하나 이상의 컴포넌트로 대체되도록 설정된 노드를 제2 타입의 노드로 확인할 수 있다.As another example, the
한편, 제1 타입의 컴포넌트는 설정된 가이드라인에 부합하도록 디자인된 사용자 인터페이스 컴포넌트로서 RDS(rocket design system) 컴포넌트로 지칭될 수 있고, 제2 타입의 컴포넌트는 설정된 가이드라인에 부합하지 않는 사용자 인터페이스 컴포넌트로서 Non-RDS 컴포넌트로 지칭될 수 있다. 다만, 이를 지칭하는 용어는 전술한 바에 한정되지 않는다.Meanwhile, the first type of component is a user interface component designed to comply with established guidelines and may be referred to as an RDS (rocket design system) component, and the second type of component is a user interface component that does not comply with established guidelines. It may be referred to as a Non-RDS component. However, the term referring to this is not limited to the above.
일 실시 예에 따르면, 전자 장치(100)는 제1 타입의 컴포넌트의 수 및 제2 타입의 컴포넌트의 수를 확인할 수 있다. 예를 들어, XML 분석 모듈(200)은 제1 타입의 뷰의 수 및 제2 타입의 뷰의 수를 확인할 수 있다. 또는, 코드 분석 모듈(210)은 제1 타입의 노드의 호출 횟수 및 제2 타입의 노드의 호출 횟수를 확인할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 전자 장치(100)는 제1 타입의 컴포넌트의 수 및 제2 타입의 컴포넌트의 수에 기초하여, 애플리케이션의 적어도 하나의 도메인에서의 제1 타입의 컴포넌트의 커버리지 비율을 확인할 수 있다. 보다 구체적으로, 데이터 통합 모듈(220)은 XML 분석 모듈(200) 또는 코드 분석 모듈(210)로부터 획득한 정보에 기초하여, 커버리지 비율을 결정할 수 있다.According to one embodiment, the
예를 들어, 애플리케이션의 제1 도메인이 XML 파일(230)에 의해서 구현된 경우, 데이터 통합 모듈(220)은 제1 타입의 뷰의 수 및 제2 타입의 뷰의 수에 관한 정보를 XML 분석 모듈(200)로부터 획득할 수 있다. 이후, 데이터 통합 모듈(220)은 제1 타입의 뷰의 수를 제1 타입의 뷰의 수와 제2 타입의 뷰의 수의 합으로 나눔으로써 획득된 값을 커버리지 비율로 결정할 수 있다.For example, if the first domain of the application is implemented by an
또다른 예를 들어, 애플리케이션의 제1 도메인이 애플리케이션에 관한 코드(240)에 의해서 구현된 경우, 데이터 통합 모듈(220)은 제1 타입의 노드의 호출 횟수 및 제2 타입의 노드의 호출 횟수에 관한 정보를 코드 분석 모듈(210)로부터 획득할 수 있다. 이후, 데이터 통합 모듈(220)은 제1 타입의 노드의 호출 횟수를 제1 타입의 노드의 호출 횟수와 제2 타입의 노드의 호출 횟수의 합으로 나눔으로써 획득된 값을 커버리지 비율로 결정할 수 있다.As another example, if the first domain of the application is implemented by
또다른 예를 들어, 애플리케이션의 제1 도메인이 XML 파일(230) 및 애플리케이션에 관한 코드(240)에 의해서 구현된 경우, 데이터 통합 모듈(220)은 제1 타입의 뷰의 수 및 제2 타입의 뷰의 수에 관한 정보를 XML 분석 모듈(200)로부터 획득하고, 제1 타입의 노드의 호출 횟수 및 제2 타입의 노드의 호출 횟수에 관한 정보를 코드 분석 모듈(210)로부터 획득할 수 있다. 이후, 데이터 통합 모듈(220)은 제1 타입의 뷰의 수 및 제1 타입의 노드의 호출 횟수의 합을 제1 타입의 뷰의 수, 제2 타입의 뷰의 수, 제1 타입의 노드의 호출 횟수 및 제2 타입의 노드의 호출 횟수의 합으로 나눔으로써 획득된 값을 커버리지 비율로 결정할 수 있다.As another example, if the first domain of the application is implemented by an
일 실시 예에 따르면, 전자 장치(100)는 애플리케이션에 관한 정보에 기초하여 커버리지 비율에 관한 정보(260)를 제공할 수 있다. 예를 들어, 전자 장치(100)는 작업자 단말(140)을 통해, 애플리케이션의 하나 이상의 도메인 각각에서의 제1 타입의 컴포넌트의 커버리지 비율에 관한 정보를 표시하는 사용자 인터페이스를 제공할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 전자 장치(100)는 애플리케이션의 적어도 하나의 도메인을 분석한 결과에 관한 정보를 제공할 수 있다. 보다 구체적으로, 전자 장치(100)는 뷰 렌더링 경로에 관한 정보(270), 뷰 위치에 관한 정보(280) 및 함수 호출 경로에 관한 정보(290) 중 적어도 하나를 제공할 수 있다.According to one embodiment, the
예를 들어, 전자 장치(100)는 복수의 뷰들의 트리 뷰에 기초하여, 제2 타입의 뷰 각각의 종속 관계에 관한 정보 또는 렌더링 경로에 관한 정보(270)를 제공할 수 있다. 또는, 전자 장치(100)는 복수의 뷰들의 트리 뷰에 기초하여, 제2 타입의 뷰 각각의 트리 뷰에서의 위치에 관한 정보(280)를 제공할 수 있다. 전자 장치(100)는 복수의 노드들의 호출 그래프에 기초하여, 제2 타입의 노드 각각의 호출 관계에 관한 정보(290)를 제공할 수 있다.For example, the
도 3은 일 실시 예에 따라 전자 장치(100)가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 제공하는 과정을 설명하기 위한 도면이다. 도 2와 중복되는 내용은 간략히 설명하거나 생략하기로 한다.FIG. 3 is a diagram illustrating a process in which the
일 실시 예에 따르면, XML 분석 모듈(300)은 애플리케이션의 적어도 하나의 도메인을 구현하기 위한 코드 또는 파일을 획득할 수 있다. 예를 들어, XML 분석 모듈(300)은 애플리케이션의 제1 도메인을 구현하기 위한 XML 파일(305)을 획득할 수 있다.According to one embodiment, the
일 실시 예에 따르면, XML 분석 모듈(300)은 XML 파일(305)에 기초하여 애플리케이션의 적어도 하나의 도메인 내 하나 이상의 페이지에 대응하는 복수의 뷰들의 트리 뷰(315)를 생성할 수 있다. 예를 들어, 파싱 모듈(310)은 획득한 XML 파일(305)을 파싱함으로써, 제1 도메인 내 하나 이상의 페이지에 표시되는 제1 뷰 내지 제9 뷰 간의 종속 관계를 나타내는 트리 뷰(315)를 생성할 수 있다.According to one embodiment, the
이때, 트리 뷰(tree view)는 복수의 뷰들이 렌더링 될 때의 종속 관계를 계층적인 구조로 나타내는 그래프를 지칭할 수 있다. 예를 들어, 도 3을 참조하면, 제5 뷰가 렌더링되기 위해서는 제1 뷰 및 제2 뷰의 렌더링이 선행되어야 함에 따라, 제5 뷰는 제1 뷰 및 제2 뷰에 종속되는 관계를 가질 수 있고, 이는 제1 뷰 → 제2 뷰 → 제5 뷰의 구조로 트리 뷰(315)에 표현될 수 있다. 한편, 트리 뷰는 뷰 트리(view tree) 등으로 혼용될 수 있으나, 이를 지칭하는 용어는 전술한 바에 한정되지 않는다.At this time, a tree view may refer to a graph that represents the dependency relationship when a plurality of views are rendered in a hierarchical structure. For example, referring to FIG. 3, in order for the fifth view to be rendered, the rendering of the first view and the second view must precede, so the fifth view may have a dependent relationship with the first view and the second view. There is, and this can be expressed in the
일 실시 예에 따르면, XML 분석 모듈(300)은 복수의 뷰들 각각의 타입을 확인할 수 있다. 보다 구체적으로, XML 분석 모듈(300)은 설정된 하나 이상의 컴포넌트와 매칭되는지 여부 및 설정된 하나 이상의 컴포넌트로 대체되도록 설정되었는지 여부에 기초하여, 복수의 뷰들 중 제1 타입의 뷰, 제2 타입의 뷰 및 제3 타입의 뷰를 확인할 수 있다. According to one embodiment, the
예를 들어, 도 3을 참조하면, XML 분석 모듈(300)은 복수의 뷰들 중 설정된 하나 이상의 컴포넌트에 매칭되는 제5 뷰, 제6 뷰, 제7 뷰 및 제9 뷰를 제1 타입의 뷰로 확인할 수 있다. 또한, XML 분석 모듈(300)은 하나 이상의 컴포넌트에 매칭되지 않으나 하나 이상의 컴포넌트로 대체되도록 설정된 제3 뷰 및 제8 뷰를 제2 타입의 뷰로 확인할 수 있다. XML 분석 모듈(300)은 하나 이상의 컴포넌트에 매칭되지 않고 하나 이상의 컴포넌트로 대체되지 않도록 설정된 제1 뷰, 제2 뷰 및 제4 뷰를 제3 타입의 뷰로 확인할 수 있다.For example, referring to FIG. 3, the
일 실시 예에 따르면, XML 분석 모듈(300)은 복수의 뷰들 중 제3 타입의 뷰를 필터링할 수 있다. 예를 들어, 필터링 모듈(320)은 제3 타입의 뷰로 확인된 제1 뷰, 제2 뷰 및 제4 뷰를 제외할 수 있다. 다만, 제3 타입의 뷰를 필터링하는 과정은 생략될 수 있다.According to one embodiment, the
일 실시 예에 따르면, XML 분석 모듈(300)은 복수의 뷰들 중 제1 타입의 뷰의 수 및 제2 타입의 뷰의 수를 확인할 수 있다. 예를 들어, 카운팅 모듈(350)은 제1 타입의 뷰의 수가 4이고, 제2 타입의 뷰의 수가 2임을 확인할 수 있다.According to one embodiment, the
일 실시 예에 따르면, XML 분석 모듈(300)은 애플리케이션에 관한 코드(325) 및 JAR 파일(330) 중 적어도 하나에 기초하여 레퍼런스 정보(345)를 확인하고, 이를 추가적으로 고려하여 제1 타입의 뷰의 수 및 제2 타입의 뷰의 수를 확인할 수 있다. 예를 들어, 제1 도메인 및 제2 도메인에서의 제1 타입의 뷰의 커버리지 비율을 계산하는 경우, 레퍼런스 분석 모듈(340)은 트리 뷰(315)에 포함된 제1 타입의 뷰 및 제2 타입의 뷰가 제2 도메인에서 렌더링된 횟수를 확인할 수 있다. 이후, 카운팅 모듈(350)은 레퍼런스 분석 모듈(340)로부터 획득한 렌더링된 횟수를 추가적으로 고려하여, 제1 타입의 뷰의 수 및 제2 타입의 뷰의 수를 확인할 수 있다. 다만, 제1 도메인에서의 제1 타입의 뷰의 커버리지 비율만을 계산하는 경우, 레퍼런스 정보를 생성 및 고려하는 과정은 생략될 수 있다.According to one embodiment, the
일 실시 예에 따르면, XML 분석 모듈(300)은 뷰의 수에 관한 정보(355)를 제공할 수 있다. 예를 들어, 카운팅 모듈(350)은 제1 타입의 뷰의 수가 4이고, 제2 타입의 뷰의 수가 2라는 정보를 포함하는 뷰의 수에 관한 정보(355)를 데이터 통합 모듈에 제공할 수 있다.According to one embodiment, the
일 실시 예에 따르면, XML 분석 모듈(300)은 경로에 관한 정보(365)를 제공할 수 있다. 보다 구체적으로, XML 분석 모듈(300)은 복수의 뷰들의 트리 뷰(315)에 기초하여, 제2 타입의 뷰의 종속 관계에 관한 정보 또는 렌더링 경로에 관한 정보(365)를 제공할 수 있다.According to one embodiment, the
예를 들어, 경로 식별 모듈(360)은 제2 타입의 제3 뷰의 종속 관계가 제1 뷰 → 제3 뷰이고, 제2 타입의 제8 뷰의 종속 관계가 제1 뷰 → 제4 뷰 → 제8 뷰라는 정보를 포함하는 경로에 관한 정보(365)를 데이터 통합 모듈에 제공할 수 있다.For example, the
이와 같이, XML 분석 모듈(300)이 설정된 하나 이상의 컴포넌트로 대체되어야 하는 제2 타입의 뷰의 렌더링 경로에 관한 정보를 제공함으로써, 작업자는 제2 타입의 뷰를 보다 쉽게 대체할 수 있다.In this way, by providing information about the rendering path of the second type of view that should be replaced by the
한편, 도 3의 XML 분석 모듈(300)은 도 2의 XML 분석 모듈(200)에 대응할 수 있다.Meanwhile, the
도 4는 일 실시 예에 따라 전자 장치(100)가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 제공하는 과정을 설명하기 위한 도면이다. 도 2와 중복되는 내용은 간략히 설명하거나 생략하기로 한다.FIG. 4 is a diagram illustrating a process in which the
일 실시 예에 따르면, 코드 분석 모듈(400)은 애플리케이션의 적어도 하나의 도메인을 구현하기 위한 코드 또는 파일을 획득할 수 있다. 예를 들어, 코드 분석 모듈(400)은 애플리케이션의 제1 도메인을 구현하기 위한 애플리케이션에 관한 코드(410)를 획득할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 코드 분석 모듈(400)은 애플리케이션에 관한 코드(410)에 기초하여, 애플리케이션의 적어도 하나의 도메인 내 하나 이상의 페이지에 대응하는 복수의 노드들의 호출 그래프(430)를 생성할 수 있다. 예를 들어, 파싱 모듈(420)은 획득한 애플리케이션에 관한 코드(410)를 파싱함으로써, 제1 도메인 내 하나 이상의 페이지에 대응하는 제1 노드 내지 제8 노드 간의 호출 관계를 나타내는 호출 그래프(430)를 생성할 수 있다.According to one embodiment, the
이때, 호출 그래프(call graph)는 복수의 노드들 간의 호출 관계 및 호출 횟수를 나타내는 가중 방향성 비순환 그래프(weighted directed acyclic graph)를 지칭할 수 있다. 예를 들어, 도 4를 참조하면, 애플리케이션에 관한 코드(410)에 제2 노드가 제3 노드를 3번 호출하고, 제3 노드가 제4 노드를 2번 호출하도록 작성될 수 있고, 이는 제2 노드 →(3) 제3 뷰 →(2) 제4 뷰의 구조로 호출 그래프(430)에 표현될 수 있다. 또한, 복수의 노드들 중 뷰 렌더링 기능을 수행하는 함수에 대응하는 제1 노드, 제2 노드, 제3 노드 및 제5 노드는 별표로 표시될 수 잇다.At this time, the call graph may refer to a weighted directed acyclic graph representing the call relationship and number of calls between a plurality of nodes. For example, referring to Figure 4, the
일 실시 예에 따르면, 코드 분석 모듈(400)은 복수의 노드들 각각의 타입을 확인할 수 있다. 보다 구체적으로, 코드 분석 모듈(400)은 설정된 하나 이상의 컴포넌트와 매칭되는지 여부 및 설정된 하나 이상의 컴포넌트로 대체되도록 설정되었는지 여부에 기초하여, 복수의 노드들 중 제1 타입의 노드, 제2 타입의 노드 및 제3 타입의 노드를 확인할 수 있다. According to one embodiment, the
예를 들어, 도 4를 참조하면, 코드 분석 모듈(400)은 복수의 노드들 중 설정된 하나 이상의 컴포넌트에 매칭되는 제4 노드를 제1 타입의 노드로 확인할 수 있다. 또한, 코드 분석 모듈(400)은 하나 이상의 컴포넌트에 매칭되지 않으나 하나 이상의 컴포넌트로 대체되도록 설정된 제7 노드 및 제8 노드를 제2 타입의 노드로 확인할 수 있다. 코드 분석 모듈(400)은 하나 이상의 컴포넌트에 매칭되지 않고 하나 이상의 컴포넌트로 대체되지 않도록 설정된 제1 노드, 제2 노드, 제3 노드, 제5 노드 및 제6 노드를 제3 타입의 노드로 확인할 수 있다.For example, referring to FIG. 4, the
일 실시 예에 따르면, 코드 분석 모듈(400)은 복수의 노드들 중 제3 타입의 노드를 필터링할 수 있다. 예를 들어, 필터링 모듈(440)은 제3 타입의 노드로 확인된 제1 노드, 제2 노드, 제3 노드, 제5 노드 및 제6 노드를 제외할 수 있다. 다만, 제3 타입의 노드를 필터링하는 과정은 생략될 수 있다.According to one embodiment, the
일 실시 예에 따르면, 코드 분석 모듈(400)은 복수의 노드들 중 제1 타입의 노드의 호출 횟수 및 제2 타입의 노드의 호출 횟수를 확인할 수 있다. 보다 구체적으로, 코드 분석 모듈(400)은 뷰 렌더링 기능을 수행하는 함수에 대응하는 노드가 제1 타입의 노드 및 제2 타입의 노드를 각각 몇 번 호출하는지 확인할 수 있다.According to one embodiment, the
예를 들어, 카운팅 모듈(450)은 제1 타입의 제4 노드를 제1 노드가 1번 호출하고, 제2 노드가 제3 노드를 통해 6번(3x2) 호출하며, 제3 노드가 2번 호출함을 확인할 수 있다. 또한, 카운팅 모듈(450)은 제2 타입의 제7 노드를 제5 노드가 제6 노드를 통해 1번 호출하고, 제8 노드를 2번(1x2) 호출함을 확인할 수 있다. 카운팅 모듈(450)은 제2 타입의 제8 노드를 제5 노드가 1번 호출함을 확인할 수 있다.For example, the
일 실시 예에 따르면, 코드 분석 모듈(400)은 노드의 호출 횟수에 관한 정보(460)를 제공할 수 있다. 예를 들어, 카운팅 모듈(450)은 제1 타입의 노드의 호출 횟수가 9이고, 제2 타입의 노드의 호출 횟수가 4라는 정보를 포함하는 노드의 호출 횟수에 관한 정보(460)를 데이터 통합 모듈에 제공할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 코드 분석 모듈(400)은 경로에 관한 정보(480)를 제공할 수 있다. 보다 구체적으로, 코드 분석 모듈(400)은 복수의 노드들의 호출 그래프(430)에 기초하여, 제2 타입의 노드의 호출 경로에 관한 정보(480)를 제공할 수 있다.According to one embodiment, the
예를 들어, 경로 식별 모듈(470)은 제2 타입의 제7 노드의 호출 경로가 제5 노드 → 제6 노드 → 제7 노드, 제5 노드 → 제8 노드 → 제7 노드이고, 제2 타입의 제8 노드의 호출 경로가 제5 노드 → 제8 노드라는 정보를 포함하는 경로에 관한 정보(480)를 데이터 통합 모듈에 제공할 수 있다.For example, the
이와 같이, 코드 분석 모듈(400)이 설정된 하나 이상의 컴포넌트로 대체되어야 하는 제2 타입의 노드의 호출 경로에 관한 정보를 제공함으로써, 작업자는 제2 타입의 노드를 보다 쉽게 대체할 수 있다.In this way, by providing information about the call path of the second type node that should be replaced by the
한편, 도 4의 코드 분석 모듈(400)은 도 2의 코드 분석 모듈(210)에 대응할 수 있다.Meanwhile, the
도 5는 일 실시 예에 따라 전자 장치(100)가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율을 결정하는 과정을 설명하기 위한 도면이다. 도 2와 중복되는 내용은 간략히 설명하거나 생략하기로 한다.FIG. 5 is a diagram illustrating a process by which the
일 실시 예에 따르면, 전자 장치(100)는 애플리케이션의 적어도 하나의 도메인을 구현하기 위한 코드 또는 파일을 획득할 수 있다. 예를 들어, 전자 장치(100)는 애플리케이션의 제1 도메인을 구현하기 위한 XML 파일을 획득할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 전자 장치(100)는 XML 파일에 기초하여, 애플리케이션의 적어도 하나의 도메인 내 하나 이상의 페이지에 대응하는 복수의 뷰들의 트리 뷰를 생성할 수 있다. 예를 들어, 도 5를 참조하면, 전자 장치(100)는 획득한 XML 파일을 파싱함으로써, 애플리케이션의 제1 도메인의 제1 페이지에 표시되는 제1 뷰(500), 제2 뷰(520), 제3 뷰(540), 제4 뷰(560) 및 제5 뷰(580) 간의 종속 관계를 나타내는 트리 뷰를 생성할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 전자 장치(100)는 복수의 뷰들 각각의 타입을 확인할 수 있다. 보다 구체적으로, 전자 장치(100)는 설정된 하나 이상의 컴포넌트와 매칭되는지 여부 및 설정된 하나 이상의 컴포넌트로 대체되도록 설정되었는지 여부에 기초하여, 복수의 뷰들 중 제1 타입의 뷰 및 제2 타입의 뷰를 확인할 수 있다.According to one embodiment, the
예를 들어, 도 5를 참조하면, 전자 장치(100)는 복수의 뷰들 중 설정된 하나 이상의 컴포넌트에 매칭되는 제4 뷰(560) 및 제5 뷰(580)를 제1 타입의 뷰로 확인할 수 있다. 또한, 전자 장치(100)는 하나 이상의 컴포넌트에 매칭되지 않으나 하나 이상의 컴포넌트로 대체되도록 설정된 제1 뷰(500), 제2 뷰(520) 및 제3 뷰(540)를 제2 타입의 뷰로 확인할 수 있다.For example, referring to FIG. 5 , the
일 실시 예에 따르면, 전자 장치(100)는 복수의 뷰들 중 제1 타입의 뷰의 수 및 제2 타입의 뷰의 수를 확인할 수 있다. 예를 들어, 전자 장치(100)는 제1 타입의 뷰의 수가 2이고, 제2 타입의 뷰의 수가 3임을 확인할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 전자 장치(100)는 제1 타입의 컴포넌트의 수 및 제2 타입의 컴포넌트의 수에 기초하여, 애플리케이션의 적어도 하나의 도메인에서의 제1 타입의 컴포넌트의 커버리지 비율을 확인할 수 있다. 보다 구체적으로, 전자 장치(100)는 제1 타입의 뷰의 수를 제1 타입의 뷰의 수와 제2 타입의 뷰의 수의 합으로 나눔으로써 획득된 값을 커버리지 비율로 결정할 수 있다.According to one embodiment, the
예를 들어, 전자 장치(100)는 제1 타입의 뷰의 수인 2를 제1 타입의 뷰의 수와 제2 타입의 뷰의 수의 합인 5로 나눔으로써 획득된 2/5 또는 40%를 제1 도메인에서의 제1 타입의 컴포넌트의 커버리지 비율로 결정할 수 있다.For example, the
한편, 도 5는 애플리케이션의 제1 도메인의 제1 페이지가 제1 뷰(500)에 대응하는 것으로 도시하지만, 이는 일 실시 예에 불과하며, 페이지 자체가 하나의 뷰에 대응하는지 여부는 모듈을 구현하기 위한 코드 또는 파일이 어떻게 작성되었는지에 따라 상이할 수 있다.Meanwhile, Figure 5 shows that the first page of the first domain of the application corresponds to the
도 6a 내지 도 6c는 일 실시 예에 따라 전자 장치(100)가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율을 결정하는 과정을 설명하기 위한 도면이다. 도 2와 중복되는 내용은 간략히 설명하거나 생략하기로 한다.FIGS. 6A to 6C are diagrams for explaining a process by which the
일 실시 예에 따르면, 전자 장치(100)는 애플리케이션의 적어도 하나의 도메인을 구현하기 위한 코드 또는 파일을 획득할 수 있다. 예를 들어, 전자 장치(100)는 애플리케이션의 상품 상세 페이지(single detail page, SDP) 도메인의 제1 페이지(600), 제2 페이지(610) 및 제3 페이지(620)를 구현하기 위한 XML 파일을 획득할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 전자 장치(100)는 XML 파일에 기초하여, 애플리케이션의 적어도 하나의 도메인 내 하나 이상의 페이지에 대응하는 복수의 뷰들의 트리 뷰를 생성할 수 있다. 예를 들어, 전자 장치(100)는 XML 파일을 파싱함으로써, 제1 페이지(600)에 표시되는 제1 뷰(632) 내지 제12 뷰(654) 간의 종속 관계를 나타내는 제1 트리 뷰, 제2 페이지(610)에 표시되는 제13 뷰(656) 내지 제24 뷰(678) 간의 종속 관계를 나타내는 제2 트리 뷰 및 제3 페이지(620)에 표시되는 제25 뷰(680) 내지 제33 뷰(696) 간의 종속 관계를 나타내는 제3 트리 뷰를 생성할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 전자 장치(100)는 복수의 뷰들 각각의 타입을 확인할 수 있다. 보다 구체적으로, 전자 장치(100)는 설정된 하나 이상의 컴포넌트와 매칭되는지 여부 및 설정된 하나 이상의 컴포넌트로 대체되도록 설정되었는지 여부에 기초하여, 복수의 뷰들 중 제1 타입의 뷰, 제2 타입의 뷰 및 제3 타입의 뷰를 확인할 수 있다.According to one embodiment, the
예를 들어, 도 6a를 참조하면, 전자 장치(100)는 제1 페이지(600)에 표시되는 복수의 뷰들 중 설정된 하나 이상의 컴포넌트에 매칭되는 제2 뷰(634), 제6 뷰(642), 제7 뷰(644) 및 제8 뷰(646)를 제1 타입의 뷰로 확인할 수 있다. 또한, 전자 장치(100)는 하나 이상의 컴포넌트에 매칭되지 않으나 하나 이상의 컴포넌트로 대체되도록 설정된 제3 뷰(636), 제9 뷰(648), 제10 뷰(650), 제11 뷰(652) 및 제12 뷰(654)를 제2 타입의 뷰로 확인할 수 있다. 전자 장치(100)는 하나 이상의 컴포넌트에 매칭되지 않고 하나 이상의 컴포넌트로 대체되지 않도록 설정된 제1 뷰(632), 제4 뷰(638) 및 제5 뷰(640)를 제3 타입의 뷰로 확인할 수 있다.For example, referring to FIG. 6A, the
또다른 예를 들어, 도 6b를 참조하면, 전자 장치(100)는 제2 페이지(610)에 표시되는 복수의 뷰들 중 설정된 하나 이상의 컴포넌트에 매칭되는 제13 뷰(656), 제15 뷰(660), 제16 뷰(662), 제18 뷰(666), 제23 뷰(676) 및 제24 뷰(678)를 제1 타입의 뷰로 확인할 수 있다. 또한, 전자 장치(100)는 하나 이상의 컴포넌트에 매칭되지 않으나 하나 이상의 컴포넌트로 대체되도록 설정된 제14 뷰(658), 제17 뷰(664), 제19 뷰(668), 제20 뷰(670), 제21 뷰(672) 및 제22 뷰(674)를 제2 타입의 뷰로 확인할 수 있다.For another example, referring to FIG. 6B, the
또다른 예를 들어, 도 6c를 참조하면, 전자 장치(100)는 제3 페이지(620)에 표시되는 복수의 뷰들 중 설정된 하나 이상의 컴포넌트에 매칭되는 제25 뷰(680), 제28 뷰(686), 제29 뷰(688), 제31 뷰(692), 제32 뷰(694)를 제1 타입의 뷰로 확인할 수 있다. 또한, 전자 장치(100)는 하나 이상의 컴포넌트에 매칭되지 않으나 하나 이상의 컴포넌트로 대체되도록 설정된 제26 뷰(682), 제27 뷰(684), 제30 뷰(690) 및 제33 뷰(696)를 제2 타입의 뷰로 확인할 수 있다.For another example, referring to FIG. 6C, the
일 실시 예에 따르면, 전자 장치(100)는 복수의 뷰들 중 제3 타입의 뷰를 필터링할 수 있다. 예를 들어, 전자 장치(100)는 제3 타입의 뷰로 확인된 제1 뷰(632), 제4 뷰(638) 및 제5 뷰(640)를 제외할 수 있다. 다만, 제3 타입의 뷰를 필터링하는 과정은 생략될 수 있다.According to one embodiment, the
일 실시 예에 따르면, 전자 장치(100)는 복수의 뷰들 중 제1 타입의 뷰의 수 및 제2 타입의 뷰의 수를 확인할 수 있다. 보다 구체적으로, 전자 장치(100)는 적어도 하나의 도메인 내 하나 이상의 페이지 각각에 대응하는 제1 타입의 뷰의 총 수 및 제2 타입의 뷰의 총 수를 확인할 수 있다.According to one embodiment, the
예를 들어, 전자 장치(100)는 SDP 도메인의 제1 페이지(600), 제2 페이지(610) 및 제3 페이지(620) 각각에 포함된 제1 타입의 뷰의 총 수가 15임을 확인할 수 있고, SDP 도메인의 제1 페이지(600), 제2 페이지(610) 및 제3 페이지(620) 각각에 포함된 제2 타입의 뷰의 총 수가 15임을 확인할 수 있다.For example, the
일 실시 예에 따르면, 전자 장치(100)는 제1 타입의 컴포넌트의 수 및 제2 타입의 컴포넌트의 수에 기초하여, 애플리케이션의 적어도 하나의 도메인에서의 제1 타입의 컴포넌트의 커버리지 비율을 확인할 수 있다. 보다 구체적으로, 전자 장치(100)는 제1 타입의 뷰의 총 수를 제1 타입의 뷰의 총 수와 제2 타입의 뷰의 총 수의 합으로 나눔으로써 획득된 값을 커버리지 비율로 결정할 수 있다.According to one embodiment, the
예를 들어, 전자 장치(100)는 제1 타입의 뷰의 총 수인 15를 제1 타입의 뷰의 총 수와 제2 타입의 뷰의 총 수의 합인 30로 나눔으로써 획득된 15/30 또는 50%를 SDP 도메인에서의 제1 타입의 컴포넌트의 커버리지 비율로 결정할 수 있다.For example, the
도 7a 내지 도 7b는 일 실시 예에 따라 전자 장치(100)가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율을 결정하는 과정을 설명하기 위한 도면이다. 도 2와 중복되는 내용은 간략히 설명하거나 생략하기로 한다.FIGS. 7A and 7B are diagrams for explaining a process by which the
일 실시 예에 따르면, 전자 장치(100)는 제1 타입의 컴포넌트의 수 및 제2 타입의 컴포넌트의 수에 기초하여, 애플리케이션의 적어도 하나의 도메인에서의 제1 타입의 컴포넌트의 커버리지 비율을 확인할 수 있다. 보다 구체적으로, 전자 장치(100)는 제1 타입의 컴포넌트의 수가 많을수록, 제1 타입의 컴포넌트의 커버리지 비율을 보다 높게 결정할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 전자 장치(100)는 제1 타입의 컴포넌트 및 제2 타입의 컴포넌트 각각이 페이지에서 차지하는 면적에 기초하여, 애플리케이션의 적어도 하나의 도메인에서의 제1 타입의 컴포넌트의 커버리지 비율을 확인할 수 있다. 보다 구체적으로, 전자 장치(100)는 페이지에서 제1 타입의 컴포넌트가 차지하는 면적이 클수록, 제1 타입의 컴포넌트의 커버리지 비율을 보다 높게 결정할 수 있다.According to one embodiment, the
예를 들어, 도 7a를 참조하면, 전자 장치(100)는 제2 타입의 제1 뷰(700), 제2 타입의 제2 뷰(710) 및 제1 타입의 제3 뷰(720) 각각이 페이지에서 차지하는 면적의 비율이 1:1:2임을 확인할 수 있다. 이에 따라, 전자 장치(100)는 제1 타입의 컴포넌트의 커버리지 비율을 2/(1+1+2) = 2/4 = 50%로 결정할 수 있다.For example, referring to FIG. 7A, the
일 실시 예에 따르면, 전자 장치(100)는 페이지 내 제1 타입의 컴포넌트 및 제2 타입의 컴포넌트 각각의 위치에 기초하여, 애플리케이션의 적어도 하나의 도메인에서의 제1 타입의 컴포넌트의 커버리지 비율을 확인할 수 있다. 보다 구체적으로, 전자 장치(100)는 제1 타입의 컴포넌트의 위치가 페이지에 중앙에 가까울수록, 제1 타입의 컴포넌트의 커버리지 비율을 보다 높게 결정할 수 있다.According to one embodiment, the
예를 들어, 도 7b를 참조하면, 전자 장치(100)는 제2 타입의 제4 뷰(730) 및 제6 뷰(750)와 제1 타입의 제5 뷰(740) 각각의 중심으로부터 페이지의 중심까지의 거리의 비율이 0.5:0.5:0임을 확인할 수 있다. 전자 장치(100)는 페이지에 중앙에 가까운 컴포넌트에 보다 높은 가중치를 부여하기 위하여, 1에서 컴포넌트 각각의 중심으로부터 페이지의 중심까지의 거리의 비율을 뺀 (1-0.5):(1-0.5):(1-0)=0.5:0.5:1을 컴포넌트 각각에 적용되는 값으로 결정할 수 있다. 이에 따라, 전자 장치(100)는 제1 타입의 컴포넌트의 커버리지 비율을 1/(0.5+0.5+1) = 1/2 = 50%로 결정할 수 있다.For example, referring to FIG. 7B, the
일 실시 예에 따르면, 전자 장치(100)는 제1 타입의 컴포넌트 및 제2 타입의 컴포넌트 각각이 사용자에게 노출되는 시간에 기초하여, 애플리케이션의 적어도 하나의 도메인에서의 제1 타입의 컴포넌트의 커버리지 비율을 확인할 수 있다. 보다 구체적으로, 전자 장치(100)는 제1 타입의 컴포넌트가 노출되는 시간이 길수록, 제1 타입의 컴포넌트의 커버리지 비율을 보다 높게 결정할 수 있다.According to one embodiment, the
예를 들어, 전자 장치(100)는 제1 타입의 컴포넌트 및 제2 타입의 컴포넌트 각각이 사용자에게 노출된 시간에 관한 정보를 사용자 단말로부터 수신할 수 있다. 이후, 전자 장치(100)는 제1 타입의 컴포넌트 및 제2 타입의 컴포넌트 각각이 사용자에게 노출된 시간의 비율에 기초하여, 제1 타입의 컴포넌트의 커버리지 비율을 결정할 수 있다. 이때, 컴포넌트가 사용자에게 노출된 시간은 컴포넌트가 사용자 단말의 디스플레이에 실제로 표시된 시간을 나타내는 것으로, 사용자의 스크롤 동작 또는 사용자가 선택한 아이콘 등에 따라 상이하게 결정될 수 있다.For example, the
일 실시 예에 따르면, 전자 장치(100)는 제1 타입의 컴포넌트 및 제2 타입의 컴포넌트 각각의 수에 관한 제1 인자, 제1 타입의 컴포넌트 및 제2 타입의 컴포넌트 각각이 페이지에서 차지하는 면적에 관한 제2 인자, 페이지 내 제1 타입의 컴포넌트 및 제2 타입의 컴포넌트 각각의 위치에 관한 제3 인자 및 제1 타입의 컴포넌트 및 제2 타입의 컴포넌트 각각이 사용자에게 노출되는 시간에 관한 제4 인자에 상이한 가중치를 적용하여, 애플리케이션의 적어도 하나의 도메인에서의 제1 타입의 컴포넌트의 커버리지 비율을 확인할 수 있다.According to one embodiment, the
예를 들어, 전자 장치(100)는 작업자 단말로부터 수신한 설정 정보에 기초하여, 제3 인자 및 제4 인자에 적용되는 가중치를 0으로 결정할 수 있다. 이에 따라, 전자 장치(100)는 제1 타입의 컴포넌트 및 제2 타입의 컴포넌트 각각의 수에 관한 제1 인자 및 제1 타입의 컴포넌트 및 제2 타입의 컴포넌트 각각이 페이지에서 차지하는 면적에 관한 제2 인자만을 고려하여, 적어도 하나의 도메인에서의 제1 타입의 컴포넌트의 커버리지 비율을 결정할 수 있다.For example, the
도 8은 일 실시 예에 따라 전자 장치(100)가 애플리케이션의 적어도 하나의 도메인에서의 설정된 컴포넌트의 커버리지 비율을 결정하는 과정을 설명하기 위한 도면이다.FIG. 8 is a diagram illustrating a process by which the
일 실시 예에 따르면, 전자 장치(100)는 애플리케이션의 적어도 하나의 도메인을 구현하기 위한 코드 또는 파일을 획득할 수 있다. 보다 구체적으로, 전자 장치(100)는 적어도 하나의 도메인을 구현하기 위한 복수의 모듈들 각각에 포함된 코드 또는 파일을 획득할 수 있다.According to one embodiment, the
예를 들어, 전자 장치(100)는 제1 도메인(800)의 제1 영역(820)을 구현하기 위한 제1 모듈에 포함된 XML 파일, java 코드, kotlin 코드 또는 JAR 파일을 획득할 수 있다. 또는, 전자 장치(100)는 제1 도메인(800)의 제2 영역(840)을 구현하기 위한 제2 모듈에 포함된 XML 파일, java 코드, kotlin 코드 또는 JAR 파일을 획득할 수 있다. 전자 장치(100)는 제1 도메인(800)의 제3 영역(860)을 구현하기 위한 제3 모듈에 포함된 XML 파일, java 코드, kotlin 코드 또는 JAR 파일을 획득할 수 있다.For example, the
일 실시 예에 따르면, 전자 장치(100)는 애플리케이션에 관한 정보에 기초하여 애플리케이션의 적어도 하나의 도메인 내 하나 이상의 페이지에 대응하는 복수의 컴포넌트들 간의 관계 그래프를 생성할 수 있다. 예를 들어, 전자 장치(100)는 제1 모듈에 포함된 코드를 파싱함으로써, 제1 영역(820)에 표시되는 복수의 제1 뷰들의 트리 뷰를 생성할 수 있다. 또는, 전자 장치(100)는 제2 모듈에 포함된 코드를 파싱함으로써, 제2 영역(840)에 표시되는 복수의 제2 뷰들의 트리 뷰를 생성할 수 있다. 전자 장치(100)는 제3 모듈에 포함된 코드를 파싱함으로써, 제3 영역(860)에 표시되는 복수의 제3 뷰들의 트리 뷰를 생성할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 전자 장치(100)는 복수의 뷰들 각각의 타입을 확인할 수 있다. 예를 들어, 설정된 하나 이상의 컴포넌트와 매칭되는지 여부 및 설정된 하나 이상의 컴포넌트로 대체되도록 설정되었는지 여부에 기초하여, 전자 장치(100)는 복수의 제1 뷰들, 복수의 제2 뷰들 및 복수의 제3 뷰들 중 제1 타입의 뷰, 제2 타입의 뷰 및 제3 타입의 뷰를 확인할 수 있다. According to one embodiment, the
일 실시 예에 따르면, 전자 장치(100)는 복수의 뷰들 중 제3 타입의 뷰를 필터링할 수 있다. 예를 들어, 전자 장치(100)는 복수의 제1 뷰들, 복수의 제2 뷰들 및 복수의 제3 뷰들 중 제3 타입의 뷰로 확인된 뷰를 제외할 수 있다. 다만, 제3 타입의 뷰를 필터링하는 과정은 생략될 수 있다.According to one embodiment, the
일 실시 예에 따르면, 전자 장치(100)는 복수의 뷰들 중 제1 타입의 뷰의 수 및 제2 타입의 뷰의 수를 확인할 수 있다. 예를 들어, 전자 장치(100)는 복수의 제1 뷰들, 복수의 제2 뷰들 및 복수의 제3 뷰들 별로 제1 타입의 뷰의 수 및 제2 타입의 뷰의 수를 확인할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 전자 장치(100)는 제1 타입의 컴포넌트의 수 및 제2 타입의 컴포넌트의 수에 기초하여, 애플리케이션의 적어도 하나의 도메인에 포함된 영역 별로, 제1 타입의 컴포넌트의 커버리지 비율을 확인할 수 있다. 보다 구체적으로, 전자 장치(100)는 적어도 하나의 도메인에 포함된 영역 각각에 표시되는 제1 타입의 뷰의 수를 제1 타입의 뷰의 수와 제2 타입의 뷰의 수의 합으로 나눔으로써 획득된 값을 커버리지 비율로 결정할 수 있다.According to one embodiment, the
예를 들어, 전자 장치(100)는 제1 영역(820)에 표시된 제1 타입의 뷰의 수를 제1 타입의 뷰의 수와 제2 타입의 뷰의 수의 합으로 나눔으로써 획득된 20%를 제1 영역(820)에서의 제1 타입의 컴포넌트의 커버리지 비율로 결정할 수 있다. 또는, 전자 장치(100)는 제2 영역(840)에 표시된 제1 타입의 뷰의 수를 제1 타입의 뷰의 수와 제2 타입의 뷰의 수의 합으로 나눔으로써 획득된 100%를 제2 영역(840)에서의 제1 타입의 컴포넌트의 커버리지 비율로 결정할 수 있다. 전자 장치(100)는 제3 영역(860)에 표시된 제1 타입의 뷰의 수를 제1 타입의 뷰의 수와 제2 타입의 뷰의 수의 합으로 나눔으로써 획득된 50%를 제3 영역(860)에서의 제1 타입의 컴포넌트의 커버리지 비율로 결정할 수 있다.For example, the
일 실시 예에 따르면, 전자 장치(100)는 적어도 하나의 도메인에 포함된 하나 이상의 영역 별로 상이한 가중치를 적용하여, 애플리케이션의 적어도 하나의 도메인에서의 제1 타입의 컴포넌트의 커버리지 비율을 확인할 수 있다. 보다 구체적으로, 전자 장치(100)는 하나 이상의 영역 각각이 차지하는 면적, 하나 이상의 영역 각각의 위치 및 하나 이상의 영역 각각이 사용자에게 노출되는 시간에 기초하여 하나 이상의 영역마다 상이한 가중치를 적용함으로써, 애플리케이션의 적어도 하나의 도메인에서의 제1 타입의 컴포넌트의 커버리지 비율을 확인할 수 있다.According to one embodiment, the
예를 들어, 전자 장치(100)는 작업자 단말로부터 수신한 설정 정보에 기초하여, 하나 이상의 영역 각각이 차지하는 면적에 따라 제1 영역(820), 제2 영역(840) 및 제3 영역(860)에 상이한 가중치를 적용할 수 있다. 이에 따라, 전자 장치(100)는 제1 영역(820), 제2 영역(840) 및 제3 영역(860)이 차지하는 면적의 비율이 1:2:1임을 확인하고, 제1 타입의 컴포넌트의 커버리지 비율을 (1x20% + 2x100% + 1x50%)/(1+2+1) = 67.5%로 결정할 수 있다.For example, the
도 9는 일 실시 예에 따라 전자 장치(100)가 제공하는 사용자 인터페이스(900)의 일 예를 도시한다.FIG. 9 illustrates an example of a
일 실시 예에 따르면, 전자 장치(100)는 작업자 단말을 통해 애플리케이션의 하나 이상의 도메인에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 포함하는 사용자 인터페이스(900)를 작업자에게 제공할 수 있다. 예를 들어, 도 9를 참조하면, 작업자 단말은 전자 장치(100)로부터 웹 페이지 또는 애플리케이션 화면 등으로 표시할 수 있는 형태의 정보를 수신하고, 수신한 정보에 기초하여 애플리케이션 전체에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 표시하는 영역 또는 애플리케이션의 하나 이상의 도메인에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 표시하는 영역 등을 포함하는 사용자 인터페이스(900)를 디스플레이에 표시할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 사용자 인터페이스(900)는 애플리케이션에 관한 파라미터를 설정하기 위한 영역(910)을 포함할 수 있다. 예를 들어, 영역(910)은 애플리케이션의 버전을 설정하기 위한 영역, 애플리케이션이 설치된 사용자 단말의 플랫폼을 설정하기 위한 영역 및 도메인을 설정하기 위한 영역을 포함할 수 있다.According to one embodiment, the
일 실시 예에 따르면, 사용자 인터페이스(900)는 애플리케이션 전체에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 표시하는 영역(920)을 포함할 수 있다. 예를 들어, 작업자가 영역(910)에서 애플리케이션의 버전을 7.7.1로 설정하고, 애플리케이션이 설치된 사용자 단말의 플랫폼을 Android로 설정함에 따라, 영역(920)에는 Android 플랫폼의 사용자 단말에 설치된 7.7.1 버전의 애플리케이션 전체에서의 제1 타입의 컴포넌트의 커버리지 비율이 8%라는 정보가 표시될 수 있다.According to one embodiment, the
일 실시 예에 따르면, 사용자 인터페이스(900)는 애플리케이션의 특정 도메인에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 표시하는 영역(930)을 포함할 수 있다. 예를 들어, 작업자가 영역(910)에서 애플리케이션의 버전을 7.7.1로 설정하고, 도메인을 domain-cart로 설정함에 따라, 영역(930)에는 버전 7.7.1의 애플리케이션의 domain-cart에서의 제1 타입의 컴포넌트의 커버리지 비율이 13.2%라는 정보가 표시될 수 있다. 또한, 영역(930)에는 7.7.1 직전의 버전인 7.6.9 버전의 애플리케이션의 domain-cart에서의 제1 타입의 컴포넌트의 커버리지 비율이 12.9%라는 정보가 함께 표시됨으로써, 개선된 비율에 관한 정보가 제공될 수 있다.According to one embodiment, the
일 실시 예에 따르면, 사용자 인터페이스(900)는 애플리케이션의 하나 이상의 도메인에서의 설정된 컴포넌트의 커버리지 비율에 관한 정보를 표시하는 영역(940) 및 영역(950)을 포함할 수 있다. 예를 들어, 영역(940) 및 영역(950)에는 애플리케이션의 복수의 도메인들 각각에서의 제1 타입의 컴포넌트의 커버리지 비율에 관한 정보가 표시될 수 있다.According to one embodiment, the
한편, 도 9의 도시된 사용자 인터페이스 컴포넌트의 종류 및 커버리지 비율에 관한 구체적인 예시들은 일 실시 예에 불과하며, 본 개시가 전술한 바와 상이한 예시들로 구현될 수 있음은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명하다.Meanwhile, the specific examples of the types and coverage ratios of the user interface components shown in FIG. 9 are merely examples, and it is common in the technical field to which the present disclosure pertains that the present disclosure may be implemented with examples different from those described above. It is self-evident to those who have the knowledge of
도 10은 일 실시 예에 따른 전자 장치의 정보 제공 방법의 흐름도를 나타낸다. 중복되는 내용에 대해서는 전술한 기재가 적용될 수 있다.Figure 10 shows a flowchart of a method for providing information by an electronic device according to an embodiment. The foregoing description may apply to overlapping content.
S1000 단계에서, 전자 장치는 애플리케이션에 관한 정보를 획득할 수 있다.In step S1000, the electronic device may obtain information about the application.
일 실시 예에 따르면, 애플리케이션에 관한 정보는 XML(extensible markup language) 파일을 포함할 수 있다.According to one embodiment, information about the application may include an extensible markup language (XML) file.
일 실시 예에 따르면, 애플리케이션에 관한 정보는 애플리케이션에 관한 코드를 포함할 수 있다.According to one embodiment, information about the application may include code about the application.
S1020 단계에서, 전자 장치는 애플리케이션에 관한 정보에 기초하여, 애플리케이션의 제1 도메인 내 하나 이상의 페이지에 대응하는 복수의 컴포넌트들 간의 관계 그래프를 생성할 수 있다.In step S1020, the electronic device may generate a relationship graph between a plurality of components corresponding to one or more pages in the first domain of the application based on information about the application.
일 실시 예에 따르면, 전자 장치는 복수의 컴포넌트들 간의 관계 그래프를 생성할 때, XML 파일을 파싱함으로써, 하나 이상의 페이지에 표시되는 복수의 뷰들의 트리 뷰(tree view)를 생성할 수 있다.According to one embodiment, when creating a relationship graph between a plurality of components, the electronic device may generate a tree view of a plurality of views displayed on one or more pages by parsing an XML file.
일 실시 예에 따르면, 전자 장치는 복수의 컴포넌트들 간의 관계 그래프를 생성할 때, 애플리케이션에 관한 코드를 파싱함으로써, 하나 이상의 페이지에 대응하는 복수의 노드들의 호출 그래프(call graph)를 생성할 수 있다.According to one embodiment, when creating a relationship graph between a plurality of components, the electronic device may generate a call graph of a plurality of nodes corresponding to one or more pages by parsing code related to the application. .
S1040 단계에서, 전자 장치는 복수의 컴포넌트들 중 제1 타입의 적어도 하나의 제1 컴포넌트, 제2 타입의 적어도 하나의 제2 컴포넌트 및 제3 타입의 적어도 하나의 제3 컴포넌트를 확인할 수 있다.In step S1040, the electronic device may identify at least one first component of the first type, at least one second component of the second type, and at least one third component of the third type among the plurality of components.
일 실시 예에 따르면, 제1 타입의 컴포넌트는 설정된 하나 이상의 컴포넌트에 매칭되는 컴포넌트를 포함하고, 제2 타입의 컴포넌트는 하나 이상의 컴포넌트에 매칭되지 않으나 하나 이상의 컴포넌트로 대체되도록 설정된 컴포넌트를 포함하며, 제3 타입의 컴포넌트는 하나 이상의 컴포넌트에 매칭되지 않고 하나 이상의 컴포넌트로 대체되지 않도록 설정된 컴포넌트를 포함할 수 있다.According to one embodiment, the first type of component includes a component that matches one or more configured components, and the second type of component includes a component that does not match one or more components but is configured to be replaced by one or more components, and
일 실시 예에 따르면, 전자 장치는 적어도 하나의 제1 컴포넌트, 적어도 하나의 제2 컴포넌트 및 적어도 하나의 제3 컴포넌트를 확인할 때, 복수의 뷰들 중 제1 타입의 적어도 하나의 제1 뷰, 제2 타입의 적어도 하나의 제2 뷰 및 제3 타입의 적어도 하나의 제3 뷰를 확인할 수 있다.According to one embodiment, when checking at least one first component, at least one second component, and at least one third component, the electronic device displays at least one first view of a first type among a plurality of views, a second view At least one second view of the type and at least one third view of the third type can be confirmed.
일 실시 예에 따르면, 전자 장치는 적어도 하나의 제1 컴포넌트, 적어도 하나의 제2 컴포넌트 및 적어도 하나의 제3 컴포넌트를 확인할 때, 복수의 노드들 중 제1 타입의 적어도 하나의 제1 노드, 제2 타입의 적어도 하나의 제2 노드 및 제3 타입의 적어도 하나의 제3 노드를 확인할 수 있다.According to one embodiment, when the electronic device checks the at least one first component, at least one second component, and at least one third component, at least one first node of the first type among the plurality of nodes, the first node At least one second node of two types and at least one third node of a third type can be identified.
S1060 단계에서, 전자 장치는 제1 도메인에서의 적어도 하나의 제1 컴포넌트의 커버리지(coverage) 비율을 확인할 수 있다.In step S1060, the electronic device may check the coverage ratio of at least one first component in the first domain.
일 실시 예에 따르면, 전자 장치는 커버리지 비율을 확인할 때, 복수의 컴포넌트들 중 적어도 하나의 제3 컴포넌트를 필터링(filtering out)하고, 적어도 하나의 제1 컴포넌트의 수 및 적어도 하나의 제2 컴포넌트의 수를 확인하며, 적어도 하나의 제1 컴포넌트의 수 및 적어도 하나의 제2 컴포넌트의 수에 기초하여, 커버리지 비율을 결정할 수 있다.According to one embodiment, when checking the coverage ratio, the electronic device filters out at least one third component among the plurality of components, and determines the number of at least one first component and the number of at least one second component. The number may be checked, and the coverage ratio may be determined based on the number of at least one first component and the number of at least one second component.
일 실시 예에 따르면, 전자 장치는 적어도 하나의 제1 컴포넌트의 수 및 적어도 하나의 제2 컴포넌트의 수를 확인할 때, 적어도 하나의 제1 뷰의 수 및 적어도 하나의 제2 뷰의 수를 확인하고, 커버리지 비율은, 적어도 하나의 제1 뷰의 수를 적어도 하나의 제1 뷰의 수와 적어도 하나의 제2 뷰의 수의 합으로 나눔으로써 획득된 값으로 결정될 수 있다.According to one embodiment, when checking the number of at least one first component and the number of at least one second component, the electronic device checks the number of at least one first view and the number of at least one second view, and , the coverage ratio may be determined as a value obtained by dividing the number of at least one first view by the sum of the number of at least one first view and the number of at least one second view.
일 실시 예에 따르면, 전자 장치는 적어도 하나의 제1 컴포넌트의 수 및 적어도 하나의 제2 컴포넌트의 수를 확인할 때, 적어도 하나의 제1 노드의 호출 횟수 및 적어도 하나의 제2 노드의 호출 횟수를 확인하고, 커버리지 비율은, 적어도 하나의 제1 노드의 호출 횟수를 적어도 하나의 제1 노드의 호출 횟수와 적어도 하나의 제2 노드의 호출 횟수의 합으로 나눔으로써 획득된 값으로 결정될 수 있다.According to one embodiment, when checking the number of at least one first component and the number of at least one second component, the electronic device determines the number of calls of at least one first node and the number of calls of at least one second node. Confirmation, the coverage ratio may be determined as a value obtained by dividing the number of calls of at least one first node by the sum of the number of calls of at least one first node and the number of calls of at least one second node.
일 실시 예에 따르면, 커버리지 비율은, 적어도 하나의 제1 컴포넌트 및 적어도 하나의 제2 컴포넌트 각각이 하나 이상의 페이지에서 차지하는 면적, 하나 이상의 페이지 내 적어도 하나의 제1 컴포넌트 및 적어도 하나의 제2 컴포넌트 각각의 위치 및 적어도 하나의 제1 컴포넌트 및 적어도 하나의 제2 컴포넌트 각각이 사용자에게 노출되는 시간 중 적어도 하나를 더 고려하여 결정될 수 있다.According to one embodiment, the coverage ratio is the area occupied by each of at least one first component and at least one second component on one or more pages, each of at least one first component and at least one second component within one or more pages It may be determined by further considering at least one of the location and the time at which each of the at least one first component and the at least one second component is exposed to the user.
일 실시 예에 따르면, 커버리지 비율은, 적어도 하나의 제1 컴포넌트의 수가 많을수록, 적어도 하나의 제1 컴포넌트가 차지하는 면적이 클수록, 적어도 하나의 제1 컴포넌트의 위치가 하나 이상의 페이지에 중앙에 가까울수록 또는 적어도 하나의 제1 컴포넌트가 노출되는 시간이 길수록, 보다 높게 결정될 수 있다.According to one embodiment, the coverage ratio increases as the number of at least one first component increases, the area occupied by the at least one first component increases, the location of the at least one first component is closer to the center of one or more pages, or The longer the time that at least one first component is exposed, the higher the value can be determined.
S1080 단계에서, 전자 장치는 커버리지 비율에 관한 정보를 제공할 수 있다.In step S1080, the electronic device may provide information about the coverage ratio.
일 실시 예에 따르면, 전자 장치는 커버리지 비율에 관한 정보를 제공할 때, 복수의 뷰들의 트리 뷰에 기초하여, 적어도 하나의 제2 뷰의 종속 관계에 관한 정보를 제공할 수 있다.According to one embodiment, when providing information about the coverage ratio, the electronic device may provide information about the dependency relationship of at least one second view based on a tree view of a plurality of views.
일 실시 예에 따르면, 전자 장치는 커버리지 비율에 관한 정보를 제공할 때, 복수의 노드들의 호출 그래프에 기초하여, 적어도 하나의 제2 노드의 호출 관계에 관한 정보를 제공할 수 있다.According to one embodiment, when providing information about the coverage ratio, the electronic device may provide information about the call relationship of at least one second node based on the call graph of a plurality of nodes.
도 11은 일 실시 예에 따른 전자 장치(100)의 블록도를 나타낸다.FIG. 11 shows a block diagram of an
전자 장치(100)는 일 실시 예에 따라, 트랜시버(transceiver)(1120), 메모리(1140) 및 프로세서(processor)(1160)를 포함할 수 있다. 도 11에 도시된 전자 장치(100)는 본 실시 예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 11에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시 예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다. 실시 예에서 트랜시버(1120)는 통신부(communication device)에 포함될 수 있다. 또한, 실시 예에서 프로세서(1160)는 제어부(controller)에 포함될 수 있다.According to one embodiment, the
트랜시버(1120)는 유/무선 통신을 수행하기 위한 장치로서, 외부의 전자 장치와 통신할 수 있다. 외부의 전자 장치는 단말 또는 서버가 될 수 있다. 또한, 트랜시버(1120)가 이용하는 통신 기술에는 GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), LTE(Long Term Evolution), 5G, WLAN(Wireless LAN), Wi-Fi(Wireless-Fidelity), 블루투스(Bluetooth??), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), ZigBee, NFC(Near Field Communication) 등이 있을 수 있다. The
프로세서(1160)는 전자 장치(100)의 전반의 동작을 제어하고 데이터 및 신호를 처리할 수 있다. 프로세서(1160)는 적어도 하나의 하드웨어 유닛으로 구성될 수 있다. 또한, 프로세서(1160)는 메모리(1140)에 저장된 프로그램 코드를 실행하여 생성되는 하나 이상의 소프트웨어 모듈에 의해 동작할 수 있다. 프로세서(1160)는 메모리를 포함할 수 있는 바, 프로세서(1160)는 메모리에 저장된 프로그램 코드를 실행하여 전자 장치(100)의 전반의 동작을 제어하고 데이터 및 신호를 처리할 수 있다.The
프로세서(1160)는 애플리케이션에 관한 정보를 획득하고, 애플리케이션에 관한 정보에 기초하여, 애플리케이션의 제1 도메인 내 하나 이상의 페이지에 대응하는 복수의 컴포넌트들 간의 관계 그래프를 생성하고, 복수의 컴포넌트들 중 제1 타입의 적어도 하나의 제1 컴포넌트, 제2 타입의 적어도 하나의 제2 컴포넌트 및 제3 타입의 적어도 하나의 제3 컴포넌트를 확인하고, 제1 도메인에서의 적어도 하나의 제1 컴포넌트의 커버리지(coverage) 비율을 확인하고, 커버리지 비율에 관한 정보를 제공할 수 있다.The
전술한 실시 예들에 따른 전자 장치는 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다. 소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 상기 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다. 여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-Access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다. 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다. 매체는 컴퓨터에 의해 판독 가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다. Electronic devices according to the above-described embodiments include a processor, memory for storing and executing program data, permanent storage such as a disk drive, a communication port for communicating with an external device, a touch panel, keys, buttons, etc. It may include the same user interface device, etc. Methods implemented as software modules or algorithms may be stored on a computer-readable recording medium as computer-readable codes or program instructions executable on the processor. Here, computer-readable recording media include magnetic storage media (e.g., ROM (read-only memory), RAM (random-access memory), floppy disk, hard disk, etc.) and optical read media (e.g., CD-ROM). ), DVD (Digital Versatile Disc), etc. The computer-readable recording medium is distributed among computer systems connected to a network, so that computer-readable code can be stored and executed in a distributed manner. The media may be readable by a computer, stored in memory, and executed by a processor.
본 실시 예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 실시 예는 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩 업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 본 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 실시 예는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. "매커니즘", "요소", "수단", "구성"과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.This embodiment can be represented by functional block configurations and various processing steps. These functional blocks may be implemented in various numbers of hardware or/and software configurations that execute specific functions. For example, embodiments include integrated circuit configurations such as memory, processing, logic, look-up tables, etc. that can execute various functions under the control of one or more microprocessors or other control devices. can be hired. Similar to how the components can be implemented as software programming or software elements, the present embodiments include various algorithms implemented as combinations of data structures, processes, routines or other programming constructs, such as C, C++, Java ( It can be implemented in a programming or scripting language such as Java), assembler, etc. Functional aspects may be implemented as algorithms running on one or more processors. Additionally, this embodiment may employ conventional technologies for electronic environment settings, signal processing, and/or data processing. Terms such as “mechanism,” “element,” “means,” and “configuration” may be used broadly and are not limited to mechanical and physical configurations. The term may include the meaning of a series of software routines in connection with a processor, etc.
전술한 실시 예들은 일 예시일 뿐 후술하는 청구항들의 범위 내에서 다른 실시 예들이 구현될 수 있다.The above-described embodiments are merely examples and other embodiments may be implemented within the scope of the claims described below.
Claims (13)
애플리케이션에 관한 정보를 획득하는 단계;
상기 애플리케이션에 관한 정보에 기초하여, 상기 애플리케이션의 제1 도메인 내 하나 이상의 페이지에 대응하는 복수의 컴포넌트들 간의 관계 그래프를 생성하는 단계;
상기 복수의 컴포넌트들 중 제1 타입의 적어도 하나의 제1 컴포넌트, 제2 타입의 적어도 하나의 제2 컴포넌트 및 제3 타입의 적어도 하나의 제3 컴포넌트를 확인하는 단계;
상기 제1 도메인에서의 상기 적어도 하나의 제1 컴포넌트의 커버리지(coverage) 비율을 확인하는 단계; 및
상기 커버리지 비율에 관한 정보를 제공하는 단계를 포함하고,
상기 제1 타입의 컴포넌트는 설정된 하나 이상의 컴포넌트에 매칭되는 컴포넌트를 포함하고,
상기 제2 타입의 컴포넌트는 상기 하나 이상의 컴포넌트에 매칭되지 않으나 상기 하나 이상의 컴포넌트로 대체되도록 설정된 컴포넌트를 포함하고,
상기 제3 타입의 컴포넌트는 상기 하나 이상의 컴포넌트에 매칭되지 않고 상기 하나 이상의 컴포넌트로 대체되지 않도록 설정된 컴포넌트를 포함하는, 정보 제공 방법.
In a method of providing information by an electronic device,
Obtaining information about the application;
Based on information about the application, generating a relationship graph between a plurality of components corresponding to one or more pages in a first domain of the application;
identifying at least one first component of a first type, at least one second component of a second type, and at least one third component of a third type among the plurality of components;
Confirming a coverage ratio of the at least one first component in the first domain; and
Providing information regarding the coverage ratio,
The first type of component includes a component matching one or more set components,
The second type of component includes a component that does not match the one or more components but is set to be replaced by the one or more components,
The third type of component includes a component that does not match the one or more components and is set not to be replaced by the one or more components.
애플리케이션에 관한 정보를 획득하는 단계;
상기 애플리케이션에 관한 정보에 기초하여, 상기 애플리케이션의 제1 도메인 내 하나 이상의 페이지에 대응하는 복수의 컴포넌트들 간의 관계 그래프를 생성하는 단계;
상기 복수의 컴포넌트들 중 제1 타입의 적어도 하나의 제1 컴포넌트, 제2 타입의 적어도 하나의 제2 컴포넌트 및 제3 타입의 적어도 하나의 제3 컴포넌트를 확인하는 단계;
상기 제1 도메인에서의 상기 적어도 하나의 제1 컴포넌트의 커버리지(coverage) 비율을 확인하는 단계; 및
상기 커버리지 비율에 관한 정보를 제공하는 단계를 포함하고,
상기 커버리지 비율을 확인하는 단계는,
상기 복수의 컴포넌트들 중 상기 적어도 하나의 제3 컴포넌트를 필터링(filtering out)하는 단계;
상기 적어도 하나의 제1 컴포넌트의 수 및 상기 적어도 하나의 제2 컴포넌트의 수를 확인하는 단계; 및
상기 적어도 하나의 제1 컴포넌트의 수 및 상기 적어도 하나의 제2 컴포넌트의 수에 기초하여, 상기 커버리지 비율을 결정하는 단계를 포함하는, 정보 제공 방법.
In a method of providing information by an electronic device,
Obtaining information about the application;
Based on information about the application, generating a relationship graph between a plurality of components corresponding to one or more pages in a first domain of the application;
identifying at least one first component of a first type, at least one second component of a second type, and at least one third component of a third type among the plurality of components;
Confirming a coverage ratio of the at least one first component in the first domain; and
Providing information regarding the coverage ratio,
The step of checking the coverage ratio is,
filtering out the at least one third component among the plurality of components;
confirming the number of the at least one first component and the number of the at least one second component; and
Based on the number of the at least one first component and the number of the at least one second component, determining the coverage ratio.
상기 애플리케이션에 관한 정보는 XML(extensible markup language) 파일을 포함하고,
상기 복수의 컴포넌트들 간의 관계 그래프를 생성하는 단계는, 상기 XML 파일을 파싱함으로써, 상기 하나 이상의 페이지에 표시되는 복수의 뷰들의 트리 뷰(tree view)를 생성하는 단계를 포함하고,
상기 적어도 하나의 제1 컴포넌트, 상기 적어도 하나의 제2 컴포넌트 및 상기 적어도 하나의 제3 컴포넌트를 확인하는 단계는, 상기 복수의 뷰들 중 상기 제1 타입의 적어도 하나의 제1 뷰, 상기 제2 타입의 적어도 하나의 제2 뷰 및 상기 제3 타입의 적어도 하나의 제3 뷰를 확인하는 단계를 포함하는, 정보 제공 방법.
According to clause 3,
The information about the application includes an extensible markup language (XML) file,
The step of generating a relationship graph between the plurality of components includes generating a tree view of a plurality of views displayed on the one or more pages by parsing the XML file,
Identifying the at least one first component, the at least one second component, and the at least one third component may include: at least one first view of the first type among the plurality of views, the second type identifying at least one second view of and at least one third view of the third type.
상기 적어도 하나의 제1 컴포넌트의 수 및 상기 적어도 하나의 제2 컴포넌트의 수를 확인하는 단계는, 상기 적어도 하나의 제1 뷰의 수 및 상기 적어도 하나의 제2 뷰의 수를 확인하는 단계를 포함하고,
상기 커버리지 비율은, 상기 적어도 하나의 제1 뷰의 수를 상기 적어도 하나의 제1 뷰의 수와 상기 적어도 하나의 제2 뷰의 수의 합으로 나눔으로써 획득된 값으로 결정되는, 정보 제공 방법.
According to clause 4,
Checking the number of the at least one first component and the number of the at least one second component includes checking the number of the at least one first view and the number of the at least one second view. do,
The coverage ratio is determined as a value obtained by dividing the number of the at least one first view by the sum of the number of the at least one first view and the number of the at least one second view.
상기 복수의 뷰들의 트리 뷰에 기초하여, 상기 적어도 하나의 제2 뷰의 종속 관계에 관한 정보를 제공하는 단계를 포함하는, 정보 제공 방법.
The method of claim 4, wherein providing information about the coverage ratio comprises:
Based on the tree view of the plurality of views, providing information regarding a dependency relationship of the at least one second view.
상기 애플리케이션에 관한 정보는 애플리케이션에 관한 코드를 포함하고,
상기 복수의 컴포넌트들 간의 관계 그래프를 생성하는 단계는, 상기 애플리케이션에 관한 코드를 파싱함으로써, 상기 하나 이상의 페이지에 대응하는 복수의 노드들의 호출 그래프(call graph)를 생성하는 단계를 포함하고,
상기 적어도 하나의 제1 컴포넌트, 상기 적어도 하나의 제2 컴포넌트 및 상기 적어도 하나의 제3 컴포넌트를 확인하는 단계는, 상기 복수의 노드들 중 상기 제1 타입의 적어도 하나의 제1 노드, 상기 제2 타입의 적어도 하나의 제2 노드 및 상기 제3 타입의 적어도 하나의 제3 노드를 확인하는 단계를 포함하는, 정보 제공 방법.
According to clause 3,
The information about the application includes code about the application,
Generating a relationship graph between the plurality of components includes generating a call graph of a plurality of nodes corresponding to the one or more pages by parsing code related to the application,
The step of identifying the at least one first component, the at least one second component, and the at least one third component includes: at least one first node of the first type among the plurality of nodes, the second Identifying at least one second node of the type and at least one third node of the third type.
상기 적어도 하나의 제1 컴포넌트의 수 및 상기 적어도 하나의 제2 컴포넌트의 수를 확인하는 단계는, 상기 적어도 하나의 제1 노드의 호출 횟수 및 상기 적어도 하나의 제2 노드의 호출 횟수를 확인하는 단계를 포함하고,
상기 커버리지 비율은, 상기 적어도 하나의 제1 노드의 호출 횟수를 상기 적어도 하나의 제1 노드의 호출 횟수와 상기 적어도 하나의 제2 노드의 호출 횟수의 합으로 나눔으로써 획득된 값으로 결정되는, 정보 제공 방법.
According to clause 7,
The step of checking the number of the at least one first component and the number of the at least one second component includes checking the number of calls of the at least one first node and the number of calls of the at least one second node. Including,
The coverage ratio is determined as a value obtained by dividing the number of calls of the at least one first node by the sum of the number of calls of the at least one first node and the number of calls of the at least one second node. Information, How to provide.
상기 복수의 노드들의 호출 그래프에 기초하여, 상기 적어도 하나의 제2 노드의 호출 관계에 관한 정보를 제공하는 단계를 포함하는, 정보 제공 방법.
The method of claim 7, wherein providing information about the coverage ratio comprises:
An information providing method comprising providing information regarding a call relationship of the at least one second node based on a call graph of the plurality of nodes.
상기 적어도 하나의 제1 컴포넌트 및 상기 적어도 하나의 제2 컴포넌트 각각이 상기 하나 이상의 페이지에서 차지하는 면적;
상기 하나 이상의 페이지 내 상기 적어도 하나의 제1 컴포넌트 및 상기 적어도 하나의 제2 컴포넌트 각각의 위치; 및
상기 적어도 하나의 제1 컴포넌트 및 상기 적어도 하나의 제2 컴포넌트 각각이 사용자에게 노출되는 시간 중 적어도 하나를 더 고려하여 결정되는, 정보 제공 방법.
The method of claim 3, wherein the coverage ratio is:
an area occupied by each of the at least one first component and the at least one second component on the one or more pages;
A location of each of the at least one first component and the at least one second component within the one or more pages; and
The method of providing information is determined by further considering at least one of the times when each of the at least one first component and the at least one second component is exposed to the user.
상기 적어도 하나의 제1 컴포넌트의 수가 많을수록, 상기 적어도 하나의 제1 컴포넌트가 차지하는 면적이 클수록, 상기 적어도 하나의 제1 컴포넌트의 위치가 상기 하나 이상의 페이지에 중앙에 가까울수록 또는 상기 적어도 하나의 제1 컴포넌트가 노출되는 시간이 길수록, 보다 높게 결정되는, 정보 제공 방법.
The method of claim 10, wherein the coverage ratio is:
The greater the number of the at least one first component, the larger the area occupied by the at least one first component, the closer the position of the at least one first component is to the center of the one or more pages, or the closer the at least one first component is to the center of the page. The longer a component is exposed, the more highly determined the information presentation method is.
A non-transitory computer-readable recording medium that records a program for executing the method of claim 1 on a computer.
트랜시버(transceiver);
메모리; 및
프로세서(processor)를 포함하고, 상기 프로세서는,
애플리케이션에 관한 정보를 획득하고,
상기 애플리케이션에 관한 정보에 기초하여, 상기 애플리케이션의 제1 도메인 내 하나 이상의 페이지에 대응하는 복수의 컴포넌트들 간의 관계 그래프를 생성하고,
상기 복수의 컴포넌트들 중 제1 타입의 적어도 하나의 제1 컴포넌트, 제2 타입의 적어도 하나의 제2 컴포넌트 및 제3 타입의 적어도 하나의 제3 컴포넌트를 확인하고,
상기 제1 도메인에서의 상기 적어도 하나의 제1 컴포넌트의 커버리지(coverage) 비율을 확인하고,
상기 커버리지 비율에 관한 정보를 제공하고,
상기 제1 타입의 컴포넌트는 설정된 하나 이상의 컴포넌트에 매칭되는 컴포넌트를 포함하고,
상기 제2 타입의 컴포넌트는 상기 하나 이상의 컴포넌트에 매칭되지 않으나 상기 하나 이상의 컴포넌트로 대체되도록 설정된 컴포넌트를 포함하고,
상기 제3 타입의 컴포넌트는 상기 하나 이상의 컴포넌트에 매칭되지 않고 상기 하나 이상의 컴포넌트로 대체되지 않도록 설정된 컴포넌트를 포함하는, 전자 장치.As an electronic device,
transceiver;
Memory; and
Includes a processor, wherein the processor includes:
Obtain information about the application;
Based on information about the application, generate a relationship graph between a plurality of components corresponding to one or more pages in a first domain of the application,
Identifying at least one first component of a first type, at least one second component of a second type, and at least one third component of a third type among the plurality of components,
Check the coverage ratio of the at least one first component in the first domain,
Provide information regarding said coverage ratio,
The first type of component includes a component matching one or more set components,
The second type of component includes a component that does not match the one or more components but is set to be replaced by the one or more components,
The third type of component includes a component that does not match the one or more components and is set not to be replaced by the one or more components.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230101991A KR102653900B1 (en) | 2023-08-04 | 2023-08-04 | Electronic apparatus and providing information method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230101991A KR102653900B1 (en) | 2023-08-04 | 2023-08-04 | Electronic apparatus and providing information method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102653900B1 true KR102653900B1 (en) | 2024-04-03 |
Family
ID=90662274
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020230101991A KR102653900B1 (en) | 2023-08-04 | 2023-08-04 | Electronic apparatus and providing information method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102653900B1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008107990A (en) * | 2006-10-24 | 2008-05-08 | Ricoh Co Ltd | Information processor, coverage measurement method and coverage measurement program |
KR20180009589A (en) * | 2016-07-19 | 2018-01-29 | 주식회사 파수닷컴 | Apparatus and method for analyzing programs |
-
2023
- 2023-08-04 KR KR1020230101991A patent/KR102653900B1/en active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008107990A (en) * | 2006-10-24 | 2008-05-08 | Ricoh Co Ltd | Information processor, coverage measurement method and coverage measurement program |
KR20180009589A (en) * | 2016-07-19 | 2018-01-29 | 주식회사 파수닷컴 | Apparatus and method for analyzing programs |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11762634B2 (en) | Systems and methods for seamlessly integrating multiple products by using a common visual modeler | |
US11249734B2 (en) | Tri-affinity model driven method and platform for authoring, realizing, and analyzing a cross-platform application | |
KR101368068B1 (en) | Method of constructing database, server performing the same and storage media storing the same | |
US20150058821A1 (en) | Mobile design patterns | |
KR102078753B1 (en) | Method for controlling layout and an electronic device thereof | |
US20160162128A1 (en) | System and method for configuring action buttons displayed in a gui | |
EP2642394A1 (en) | Test device | |
CN105335132B (en) | Method, device and system for customizing application program function | |
US20150113500A1 (en) | Integrated visualization for modeled customizations | |
US8495566B2 (en) | Widget combos: a widget programming model | |
JP6750124B2 (en) | Terminal device, UI expansion method, and UI expansion program | |
Krogstie et al. | Mobile information systems–research challenges on the conceptual and logical level | |
KR102653900B1 (en) | Electronic apparatus and providing information method thereof | |
US8719704B2 (en) | Seamless integration of additional functionality into enterprise software without customization or apparent alteration of same | |
JP6304433B2 (en) | Information processing apparatus, server, processing method thereof, and program | |
US9292260B2 (en) | Method and system for implementing a pattern viewer | |
CN114489607A (en) | Cross-stack application processing and page rendering method, device, equipment and storage medium | |
CN110058893B (en) | Application control display method and device | |
US20240193356A1 (en) | Conditional validation for view builder | |
KR102614650B1 (en) | Electronic apparatus and managing api method thereof | |
US20240202432A1 (en) | Conditional validation for view builder | |
CN109558551A (en) | Method, apparatus, storage medium and the electronic equipment of previewing file | |
CN115309376B (en) | Application creation method and device, electronic equipment and storage medium | |
KR102649690B1 (en) | Electronic apparatus and managing a job schedule method thereof | |
KR102679462B1 (en) | Electronic device and method of providing user interface thereof |