KR101917843B1 - 어플리케이션 ui 자동 생성 방법 및 장치 - Google Patents

어플리케이션 ui 자동 생성 방법 및 장치 Download PDF

Info

Publication number
KR101917843B1
KR101917843B1 KR1020180076602A KR20180076602A KR101917843B1 KR 101917843 B1 KR101917843 B1 KR 101917843B1 KR 1020180076602 A KR1020180076602 A KR 1020180076602A KR 20180076602 A KR20180076602 A KR 20180076602A KR 101917843 B1 KR101917843 B1 KR 101917843B1
Authority
KR
South Korea
Prior art keywords
module
application
platform
control
conversion
Prior art date
Application number
KR1020180076602A
Other languages
English (en)
Inventor
남경아
조성주
Original Assignee
(주)이든크루
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by (주)이든크루 filed Critical (주)이든크루
Priority to KR1020180076602A priority Critical patent/KR101917843B1/ko
Application granted granted Critical
Publication of KR101917843B1 publication Critical patent/KR101917843B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N99/005

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

어플리케이션 UI 자동 생성 방법 및 장치가 개시된다. 어플리케이션 UI(user interface) 자동 생성 장치는 객체를 인식하고 객체의 특징을 추출하기 위해 구현된 패턴 인식 모듈, 객체의 특징을 기반으로 플랫폼 별 컨트롤 변환을 수행하기 위해 구현된 객체 변환 모듈과 잘못 추출된 컨트롤 및 레이아웃을 재설정하고 변경 정보를 데이터베이스에 기록하기 위해 구현된 객체 편집 모듈을 포함할 수 있다.

Description

어플리케이션 UI 자동 생성 방법 및 장치{Method and apparatus for automatic generation of application UI(user interface)}
본 발명은 UI 자동 생성 방법에 관한 것으로서, 보다 상세하게는 어플리케이션 UI 자동 생성 방법 및 장치에 관한 것이다.
모바일 어플리케이션은 다양한 장치에 설치되어 시스템과 사용자의 인터페이스 역할을 한다. Myers의 연구에 따르면 사용자 인터페이스(User Interface: UI)개발은 전체 프로그램 소스 코드 중 약 48%정도를 차지하며, 설계 단계의 45%, 구현 단계의 50% 정도의 시간을 소비한다.
현재 UI개발 방법으로는 개발 도구, 프로그램의 운용 환경에 따라 하위레벨 프로그래밍, 상위레벨 프로그래밍, 툴 킷의 사용, 비주얼 프로그래밍 등 다양한 방법이 사용되고 있다. 클라이언트-서버 환경에서 UI는 클라이언트 어플리케이션의 주요 기능에 해당하며, 클라이언트 시스템의 운영환경, 운영체제, 개발도구, 적용 장치 등의 요인들에 의해 영향을 받는다. 따라서 다양한 클라이언트 장치를 지원하기 위해서는 중복적인 클라이언트 개발이 발생할 수 있으며, 이는 시간과 비용의 낭비를 초래한다 따라서, 보다 편리하게 어플리케이션의 UI를 생성하기 위한 방법이 필요하다.
KR 10-2014-0153721
본 발명의 일 측면은 어플리케이션 UI 자동 생성 방법을 제공한다.
본 발명의 다른 측면은 어플리케이션 UI 자동 생성 방법을 수행하는 장치를 제공한다.
본 발명의 일 측면에 따른 어플리케이션 UI(user interface) 자동 생성 장치는, 디자인된 애플리케이션의 화면 이미지에서 객체를 인식하고 상기 객체의 특징을 추출하기 위해 구현된 패턴 인식 모듈; 상기 객체의 특징을 기반으로 컨트롤을 추출하고, 추출된 컨트롤에 대하여 플랫폼 별 컨트롤 변환을 수행하고, 추출된 객체, 컨트롤 및 레이아웃으로 화면을 구성하는 객체 변환 모듈; 및 잘못 추출된 객체의 특징, 컨트롤 및 레이아웃을 재설정하고 편집하기 위한 변경 정보를 데이터베이스에 기록하기 위해 구현된 객체 편집 모듈을 포함할 수 있다.
한편, 어플리케이션 UI 자동 생성 장치는 편집된 컨트롤 매핑 및 상기 레이아웃에 대한 변경 정보를 자동으로 상기 데이터베이스에 등록하고 차기 객체 변환시에 학습된 정보가 반영되도록 구현되는 변환 데이터 학습 모듈을 더 포함하고, 상기 변환 데이터 학습 모듈은 머신 러닝을 수행함으로써 차기 객체 변환 시에 학습된 정보가 반영되도록 구현될 수 있다.
또한, 상기 패턴 인식 모듈은 정의된 화면을 입력으로 자동 광학 인식을 기반으로 상기 객체에 대한 생성 처리를 수행할 수 있다.
또한, 상기 장치는, 상기 플랫폼 별 화면 소스 코드를 생성하기 위해 구현되는 화면 생성 모듈; 상기 플랫폼 별 생성된 상기 어플리케이션 UI를 에뮬레이팅을 통해 확인하고 검증하기 위해 구현되는 에뮬레이터 모듈; 및 확인 및 검증된 상기 어플리케이션 UI를 각 플랫폼 별로 저장하기 위해 구현되는 저장 모듈을 더 포함할 수 있다.
본 발명의 일 측면에 따른 어플리케이션 UI(user interface) 자동 생성 방법은, 패턴 인식 모듈이 디자인된 애플리케이션의 화면 이미지에서 객체를 인식하고 상기 객체의 특징을 추출하는 단계; 객체 변환 모듈이 상기 객체의 특징을 기반으로 컨트롤을 추출하고, 추출된 컨트롤에 대하여 플랫폼 별 컨트롤 변환을 수행하고, 추출된 객체, 컨트롤 및 레이아웃으로 화면을 구성하는 단계; 및 객체 편집 모듈이 잘못 추출된 객체의 특징, 컨트롤 및 레이아웃을 재설정하고 편집하기 위한 변경 정보를 데이터베이스에 기록하는 단계를 포함할 수 있다.
본 발명의 실시예에 따른 어플리케이션 UI 자동 생성 방법 및 장치에서는 기획된 화면 디자인을 기반으로 자동으로 객체를 인식하여 각 플랫폼 별(윈도우, 리눅스, 맥, 안드로이드, iOS등) 어플리케이션 UI를 자동으로 생성하는 시스템과 인식된 객체에 대한 편집 및 수정 작업과 이 과정에 대한 머신 러닝을 통해 보다 의도된 객체로의 변환이 가능하도록 학습 가능할 수 있다. 객체 인식 및 객체 변환과 변환 학습의 표준화 및 자동화를 통해 각 플랫폼 별 어플리케이션 UI를 신속하게 자동 생성하여 개발 기간 단축 및 비용 절감 효과를 가져올 수 있다.
도 1은 본 발명의 실시예에 따른 어플리케이션 UI 자동 생성 장치를 나타낸 개념도이다.
도 2는 본 발명의 실시예에 따른 UI 자동 생성 시스템을 나타낸 개념도이다.
도 3은 본 발명의 실시예에 따른 UI 자동 생성 방법을 나타낸 개념도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예와 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조 부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.
기존의 어플리케이션 제작 과정을 살펴보면 기획된 어플리케이션 화면은 각 플랫폼(윈도우, 리눅스, 맥, 안드로이드, iOS 등) 별로 해당 API(application interface)를 이용하여 제작 가능할 수 있다. 이러한 제작 방식은 멀티 플랫폼 대응을 위해서 각각의 전문적인 지식을 습득해야만 개발이 가능하며 시간적, 금전적으로 많은 비용이 든다.
이 중 UI(user interface) 개발의 경우, 윈도우 및 각 플랫폼 별로 유사한 컨트롤(예를 들어, 버튼)로 구성되는데 동일한 화면 작업을 처리하기 위해 각 플랫폼 별로 별도 UI 제작 작업을 각각 해야 한다. 또한 각 매체 별로 제작된 어플리케이션 UI를 실제 적용하여 디자인 및 기획된 내용처럼 표현되고 동작하는지 확인하기 위해서는 많은 시간과 비용이 필요하다.
이에 본 발명의 실시예에 따른 어플리케이션 UI 자동 생성 방법에서는 기획된 화면 디자인에서 자동으로 객체를 인식하여 각 플랫폼(윈도우, 리눅스, 맥, 안드로이드, iOS등) 별 어플리케이션 UI를 자동으로 생성하는 시스템이 개시된다.
본 발명의 실시예에 따른 어플리케이션 UI 자동 생성 방법에서는 인식된 객체에 대한 편집 작업 및 수정 작업과 인식된 객체에 대한 편집 작업 및 수정 작업에 대한 머신 러닝을 통해 의도된 객체로의 변환이 가능하도록 학습 가능한 제작 시스템이 개시된다.
구체적으로 객체 인식, 객체 변환, 및 변환 학습의 표준화 및 자동화를 통해 각 플랫폼 별 어플리케이션 UI를 신속하게 자동 생성함으로써 개발 기간 단축 및 비용 절감 효과가 발생할 수 있다.
본 발명의 실시예에 따른 어플리케이션 UI 자동 생성 방법에서는 각 컨트롤 별 특성이 데이터베이스에 설정될 수 있으며, 각 컨트롤 별 특성에 대한 추가 입력 및 변경이 가능하도록 한다.
우선, 기획자 및 디자이너에 의해 디자인된 애플리케이션의 화면 이미지가 준비될 수 있다. 화면 이미지는 디지털 이미지 또는 스케치된 화면일 수 있다. 스케치된 화면인 경우, 스캔 장치를 이용하여 디지털 이미지가 생성될 수 있다.
정의된 화면 이미지를 입력받은 후 자동 광학 인식(optical character recognition, OCR)이 진행되고 객체 생성 처리가 진행될 수 있다. 이 과정에서 객체 편집을 통해 얻어진 교정 지식 데이터베이스를 기반으로 보다 정확하게 객체가 생성될 수 있다.
패턴 인식에 따라 자동 생성된 객체에 대한 편집 작업이 수행될 수 있다. 생성된 객체가 불분명한 패턴 인식으로 인해 다른 특성의 객체로 인식되었을 경우, 이를 수정하며 또한 차후 보완된 인식이 가능하도록 해당 수정 내역이 데이터베이스에 저장될 수 있다.
각 객체에 대한 패턴에 따라 버튼 컨트롤(button control), 에디트 컨트롤(edit control), 리스트 컨트롤(list control), 라벨 컨트롤(label control), 이미지 컨트롤(image control), 그리드 컨트롤(grid control), 챠트 컨트롤(chart control), 콤보 컨트롤(combo control) 등과 같은 보다 상세한 컨트롤로 변환 가능할 수 있다.
특정 컨트롤마다의 속성 재정의를 수행하고 재정의된 컨트롤에 대해서는 차후 객체 생성시 정확도 향상을 위하여 데이터베이스에 저장하고 이를 학습하여 보다 정밀한 객체 생성이 가능하도록 할 수 있다.
또한, 각 객체들의 레이아웃을 포함하여 미세한 조정 등의 작업이 수행될 수 있다.
텍스트가 포함된 객체(라벨, 버튼 등)에 대해서는 OCR정확도에 따라 다르겠지만 잘못 인식된 텍스트에 대한 교정 작업이 수행될 수 있다. 특정된 패턴에 대한 객체를 정밀하게 연결할 수 있도록 편집 작업의 결과에 대한 데이터베이스화가 수행될 수 있다.
이러한 변환 과정에 대한 머신 러닝을 통해 향후 자동 객체 인식 처리시에 보다 높은 객체 인식율을 유지하도록 할 수 있다. 편집된 객체들과 함께 각 플랫폼 별 화면 소스 코드를 생성하고, 최종 생성된 각 플랫폼 별 결과를 에뮬레이터를 통해 확인, 검증할 수 있다. 확인, 검증된 어플리케이션을 각 플랫폼 별로 자동 생성된 소스 코드가 지정된 위치에 저장될 수 있다.
도 1은 본 발명의 실시예에 따른 어플리케이션 UI 자동 생성 장치를 나타낸 개념도이다.
도 1에서는 어플리케이션 UI 자동 생성 장치의 구조가 개시된다.
어플리케이션 UI 자동 생성 장치는 패턴 인식 모듈(패턴 인식부)(100), 객체 변환 모듈(객체 변환부)(110), 객체 편집 모듈(객체 편집부)(120), 변환 데이터 학습 모듈(변환 데이터 학습 처리부)(130), 화면 생성 모듈(화면 생성부)(140), 에뮬레이터 모듈(에뮬레이터)(150), 저장 모듈(저장부)(160)을 포함할 수 있다.
패턴 인식 모듈(100)은 기획되고 디자인된 화면 이미지에서 객체의 패턴을 인식하고 객체의 형태, 글자 인식 결과, 배경 인식 결과 중의 적어도 하나를 포함하는 객체의 특징을 추출할 수 있다. 본 발명에서, 객체란 화면 이미지를 구성하는 데이터 및 그 데이터와 관련된 동작인 컨트롤을 모두 포함하는 개념이다. 화면 이미지를 구성하는 데이터로서의 객체로는 다양한 형태의 윈도우, 글자, 이미지, 배경 등이 있으며, 이러한 데이터 객체의 동작(절차, 방법, 기능 등)과 관련된 컨트롤로는 버튼 컨트롤(button control), 에디트 컨트롤(edit control), 리스트 컨트롤(list control), 라벨 컨트롤(label control), 이미지 컨트롤(image control), 그리드 컨트롤(grid control), 챠트 컨트롤(chart control), 콤보 컨트롤(combo control) 등이 있다.
예를 들어, 패턴 인식 모듈(100)은 화면 이미지에서 객체의 형태(shape)(예를 들어, 사각형, 타원, 원)에 대해 인식할 수 있다. 또한, 패턴 인식 모듈(100)은 배경 인식(단일 배경색, 그라데이션 배경, 이미지 배경 등) 및 글자 인식(내용, 폰트 크기, 글자 색상 등)을 수행하여 그에 따른 글자 인식 결과 및 배경 인식 결과를 생성할 수 있다.
구체적으로 선 간의 거리, 형상 간의 거리, 및 선의 끊김을 고려하여 해당 형상이 글자를 구성하는지 글자 외의 형상을 구성하는지에 대해 판단할 수 있다. 선들의 끊김을 고려하여 각각 객체 단위들을 클러스터링할 수 있다. 또한 추가적으로 다양한 필기체 글자에 대한 반복적 러닝 학습을 통해 글자 및 글자 외의 형상을 구분할 수 있다.
객체 변환 모듈(110)은 추출된 각 객체의 특징을 기반으로 추출된 객체 들 중에서 컨트롤을 추출하고, 추출된 컨트롤에 대하여 각 플랫폼 별로 컨트롤 변환을 수행할 수 있다. 또한, 객체 변환 모듈(110)은 객체 위치 및 크기 정보를 기반으로 레이아웃을 구성하고, 추출된 객체의 특징, 컨트롤 및 레이아웃으로 화면을 구성하여 UI로 표시할 수 있다.
객체 편집 모듈(120)은 잘못 추출된 컨트롤 및 레이아웃을 재설정하고 편집하는 변경 정보를 데이터베이스에 기록하기 위해 구현될 수 있다. 예를 들어, 패턴 인식 모듈(100)에서 추출된 객체 및 객체의 특징과, 객체 변환 모듈(110)에서 추출된 컨트롤 및 화면 구성의 레이아웃에서 잘못된 부분이 있는 경우, 사용자는 객체 편집 모듈(120)을 통해 잘못 추출된 컨트롤 및 레이아웃을 재설정/편집하고 그와 관련된 변경 정보의 이력을 데이터베이스에 기록하여 데이터베이스화한다.
상기와 같은 방식으로, 객체 편집 모듈(120)은 각 컨트롤들의 속성을 보다 세밀하게 재설정하고 데이터베이스에 기록할 수 있다. 또한, 객체 편집 모듈(120)은 OCR에 의해 자동 추출된 텍스트를 수정할 수 있다.
변환 데이터 학습 학습 모듈(130)은 편집된 컨트롤 매핑 및 레이아웃에 대한 정보와 변경 정보를 자동으로 데이터베이스에 등록하여 지속적으로 학습하고, 차기 객체 변환 시에 학습된 정보가 반영되도록 구현될 수 있다.
화면 생성 모듈(140)은 생성된 어플리케이션 UI를 기반으로 각 플랫폼(윈도우, 맥, 리눅스, 안드로이드, iOS 등) 별 화면 소스 코드를 생성하기 위해 구현될 수 있다.
에뮬레이터 모듈(160)은 각 플랫폼 별로 생성된 어플리케이션 UI를 에뮬레이터를 통해 확인하고 검증하기 위해 구현될 수 있다.
저장 모듈(170)은 확인, 검증된 어플리케이션 UI를 각 플랫폼 별로 저장하기 위해 구현될 수 있다.
도 2는 본 발명의 실시예에 따른 UI 자동 생성 시스템을 나타낸 개념도이다.
도 2를 참조하면, UI 자동 생성 시스템은 애플리케이션의 화면 이미지에 대해 패턴 인식(200)을 수행할 수 있다. 패턴 인식은 형태(shape) 인식, 글자 인식, 배경 인식을 포함할 수 있다. 패턴 인식된 결과를 기반으로, 객체의 형태, 배경 인식(단일 배경색, 그라데이션 배경, 이미지 배경 등) 결과, 및 글자 인식 결과(내용, 폰트 크기, 글자 색상 등) 등의 객체 특징이 추출된다.
각 객체의 특징을 기반으로 추출된 객체들 중에서 컨트롤 추출(220)을 수행할 수 있다. 추출된 컨트롤에 대하여 각 플랫폼 별로 자동 컨트롤 변환이 수행된다.
결국, 정의된 화면 이미지를 입력받아 자동 광학 인식(optical character recognition, OCR)이 진행되고 객체 생성 처리가 진행될 수 있다. 이 과정에서 객체 편집(240)을 통해 얻어진 교정 지식 데이터베이스를 기반으로 머신 러닝을 통해 보다 정밀한 객체가 생성될 수 있다.
컨트롤 특징 설정(250)이 수행될 수 있다. 본 발명의 실시예에 따른 어플리케이션 UI 자동 생성 방법에서는 각 컨트롤 별 특성이 데이터베이스에 설정될 수 있다. 각 컨트롤 별 특성에 대한 추가 입력 및 변경이 가능하도록 한다.
텍스트가 포함된 객체(라벨, 버튼 등)에 대해서는 OCR정확도에 따라 다를 수 있겠지만, 잘못 인식된 텍스트에 대한 교정 작업이 수행될 수 있다. 특정 패턴에 대한 객체를 정밀하게 연결할 수 있도록 편집 작업의 결과에 대한 데이터베이스화가 수행될 수 있다. 이러한 변환 과정에 대한 머신 러닝을 통해 향후 자동 객체 인식 처리시에 반영하여 보다 높은 객체 인식율을 유지하도록 할 수 있다.
각 플랫폼 별로 자동 생성된 소스 코드가 지정된 위치에 데이터베이스화되어 저장(260)될 수 있으며, 에뮬레이터(270) 모듈은 각 플랫폼 별로 생성된 어플리케이션 UI를 에뮬레이터를 통해 확인하고 검증하기 위해 구현될 수 있다.
편집된 객체들과 함께 각 플랫폼 별 화면 소스 코드가 생성되고, 최종 생성된 각 플랫폼 별 결과는 에뮬레이터(270)를 통해 확인하고 검증될 수 있다. 각 플랫폼 별로 자동 생성된 소스 코드는 확인, 검증된 후에는 지정된 위치에 저장된다.
화면 생성(280)은 각 플랫폼(윈도우, 맥, 리눅스, 안드로이드, iOS 등) 별 화면 소스 코드를 기반으로 각 플랫폼 별 UI를 출력할 수 있다.
도 3은 본 발명의 실시예에 따른 UI 자동 생성 방법을 나타낸 개념도이다.
도 3을 참조하면, 기획되고 디자인된 화면 이미지에 대한 패턴 인식이 수행된다(단계 S300).
사용자에 의한 정의된 화면 이미지의 입력을 통해 자동 광학 인식(optical character recognition, OCR)이 진행되고 패턴 인식이 수행되며, 객체의 형태, 글자 인식 결과, 배경 인식 결과 중의 적어도 하나를 포함하는 객체의 특징이 추출된다. 또한, 객체의 특징이 추출된 후, 추출된 각 객체의 특징을 기반으로 추출된 객체들 중에서 컨트롤이 추출되고, 추출된 컨트롤에 대하여 각 플랫폼 별로 컨트롤 변환이 수행될 수 있다.
그리고 나서, 인식된 패턴을 기반으로 객체 생성이 수행될 수 있다(단계 S310). 객체 생성 단계에서는, 객체 위치 및 크기 정보를 기반으로 레이아웃을 구성하고, 추출된 객체, 컨트롤 및 레이아웃으로 화면을 구성하여 UI로 표시할 수 있도록 객체를 생성한다.
이 과정에서 객체 편집을 통해 얻어진 교정 지식 데이터베이스를 기반으로 보다 정밀한 객체가 생성될 수 있다.
한편, 패턴 인식에 따라 자동 생성된 객체에 대하여 객체 편집이 수행될 수 있다(단계 S320). 이 과정에서 객체 편집을 통해 얻어진 교정 지식 데이터베이스를 기반으로 머신 러닝을 수행함으로써 보다 정밀한 객체가 생성될 수 있다(단계 S330).
생성된 객체가 불분명한 패턴 인식에 의해 다른 특징의 객체로 되거나, 글자가 잘못 인식되었을 경우, 이를 수정하며 또한 차후 인식률을 높일 수 있도록 해당 내역들이 데이터베이스에 저장될 수 있다. 각 객체에 대한 패턴의 특징에 따라 버튼 컨트롤(button control), 에디트 컨트롤(edit control), 리스트 컨트롤(list control), 라벨 컨트롤(label control), 이미지 컨트롤(image control), 그리드 컨트롤(grid control), 챠트 컨트롤(chart control), 콤보 컨트롤(combo control) 등과 같은 보다 상세한 컨트롤로 변환될 수 있다.
특정 컨트롤마다의 속성 재정의가 수행되고 재정의된 컨트롤에 대해서는 정확도 향상을 위하여 해당 내역이 데이터베이스에 저장되어 차후 객체 생성시 보다 정밀한 객체 생성이 가능하도록 할 수 있다. 또한, 각 객체들의 레이아웃을 포함하여 미세한 조정 등의 작업이 수행될 수 있다. 텍스트가 포함된 객체(라벨, 버튼 등)에 대해서는 OCR정확도에 따라 다르겠지만 틀린 텍스트에 대한 교정 작업이 수행될 수 있다. 특정된 패턴에 대한 객체를 정밀하게 연결할 수 있도록 편집 작업의 결과에 대한 데이터베이스화가 수행될 수 있다.
편집 작업의 결과나 변경 내역 등이 저장된 데이터베이스를 기반으로 머신 러닝을 수행한다(단계 S330)
변환과 편집 과정에 대한 머신 러닝을 통해 향후 자동 객체 인식 처리시에 반영하여 보다 높은 객체 인식율이 유지될 수 있다.
각 플랫폼(윈도우, 맥, 리눅스, 안드로이드, iOS 등) 별 화면 소스 코드를 기반으로 각 플랫폼 별 UI를 가지는 화면을 생성한다(단계 S340).
각 플랫폼 별로 생성된 어플리케이션 UI를 에뮬레이터를 통해 확인 검증하는 단계를 수행한다(단계 S350).
편집된 객체들과 함께 각 플랫폼 별 화면 소스코드를 생성되면, 최종 생성된 각 플랫폼 별 결과는 에뮬레이터를 통해 확인, 검증될 수 있다.
에뮬레이터를 통해 확인, 검증된 결과를 저장한다(단계 S360).
확인, 검증된 어플리케이션을 각 플랫폼 별로 자동 생성된 소스코드가 지정된 위치에 저장될 수 있다.
전술한 방법은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD 와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.
프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (8)

  1. 어플리케이션 UI(user interface) 자동 생성 장치는,
    디자인된 애플리케이션의 화면 이미지에서 객체를 인식하고 상기 객체의 특징을 추출하기 위해 구현된 패턴 인식 모듈;
    상기 객체의 특징을 기반으로 컨트롤을 추출하고, 추출된 컨트롤에 대하여 윈도우, 맥, 리눅스, 안드로이드, iOS 를 포함하는 플랫폼 별 컨트롤 변환을 수행하고, 추출된 객체, 컨트롤 및 레이아웃으로 화면을 구성하는 객체 변환 모듈; 및
    잘못 추출된 객체의 특징, 컨트롤 및 레이아웃을 재설정하고 편집하기 위한 변경 정보를 데이터베이스에 기록하기 위해 구현된 객체 편집 모듈을 포함하고,
    편집된 컨트롤 매핑 및 상기 레이아웃에 대한 변경 정보를 자동으로 상기 데이터베이스에 등록하고 차기 객체 변환시에 학습된 정보가 반영되도록 구현되는 변환 데이터 학습 모듈을 더 포함하며,
    상기 변환 데이터 학습 모듈은 머신 러닝을 수행함으로써 차기 객체 변환 시에 학습된 정보가 반영되도록 구현되는 것을 특징으로 하고,
    윈도우, 맥, 리눅스, 안드로이드, iOS를 포함하는 플랫폼 별 화면 소스 코드를 생성하기 위해 구현되는 화면 생성 모듈;및
    확인 및 검증된 상기 어플리케이션 UI를 각 플랫폼 별로 저장하기 위해 구현되는 저장 모듈을 더 포함하는 것을 특징으로 하는 어플리케이션 UI 자동 생성 장치.
  2. 삭제
  3. 제1항에 있어서,
    상기 패턴 인식 모듈은 정의된 화면을 입력으로 자동 광학 인식을 기반으로 상기 객체에 대한 생성 처리를 수행하는 것을 특징으로 하는 어플리케이션 UI 자동 생성 장치.
  4. 제1항에 있어서,
    상기 플랫폼 별 생성된 상기 어플리케이션 UI를 에뮬레이팅을 통해 확인하고 검증하기 위해 구현되는 에뮬레이터 모듈을 더 포함하는 것을 특징으로 하는 어플리케이션 UI 자동 생성 장치.
  5. 어플리케이션 UI(user interface) 자동 생성 방법은,
    패턴 인식 모듈이 디자인된 애플리케이션의 화면 이미지에서 객체를 인식하고 상기 객체의 특징을 추출하는 단계;
    객체 변환 모듈이 상기 객체의 특징을 기반으로 컨트롤을 추출하고, 추출된 컨트롤에 대하여 윈도우, 맥, 리눅스, 안드로이드, iOS를 포함하는 플랫폼 별 컨트롤 변환을 수행하고, 추출된 객체, 컨트롤 및 레이아웃으로 화면을 구성하는 단계; 및
    객체 편집 모듈이 잘못 추출된 객체의 특징, 컨트롤 및 레이아웃을 재설정하고 편집하기 위한 변경 정보를 데이터베이스에 기록하는 단계를 포함하고,
    변환 데이터 학습 모듈이 편집된 컨트롤 매핑 및 상기 레이아웃에 대한 정보를 자동으로 상기 데이터베이스에 등록하고 머신 러닝을 수행함으로써 차기 객체 변환 시에 학습된 정보를 반영하는 단계를 더 포함하며,
    화면 생성 모듈이 윈도우, 맥, 리눅스, 안드로이드, iOS를 포함하는 플랫폼 별 화면 소스 코드를 생성하는 단계; 및
    저장 모듈이 확인 및 검증된 상기 어플리케이션 UI를 각 플랫폼 별로 저장하는 단계를 더 포함하는 것을 특징으로 하는 어플리케이션 UI 자동 생성 방법.
  6. 삭제
  7. 제5항에 있어서,
    상기 패턴 인식 모듈은 정의된 화면을 입력으로 자동 광학 인식을 기반으로 상기 객체에 대한 생성 처리를 수행하는 것을 특징으로 하는 어플리케이션 UI 자동 생성 방법.
  8. 제5항에 있어서,
    에뮬레이터 모듈이 상기 플랫폼 별 생성된 상기 어플리케이션 UI를 에뮬레이팅을 통해 확인하고 검증하는 단계;를 더 포함하는 것을 특징으로 하는 어플리케이션 UI 자동 생성 방법.
KR1020180076602A 2018-07-02 2018-07-02 어플리케이션 ui 자동 생성 방법 및 장치 KR101917843B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180076602A KR101917843B1 (ko) 2018-07-02 2018-07-02 어플리케이션 ui 자동 생성 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180076602A KR101917843B1 (ko) 2018-07-02 2018-07-02 어플리케이션 ui 자동 생성 방법 및 장치

Publications (1)

Publication Number Publication Date
KR101917843B1 true KR101917843B1 (ko) 2018-11-13

Family

ID=64397915

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180076602A KR101917843B1 (ko) 2018-07-02 2018-07-02 어플리케이션 ui 자동 생성 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101917843B1 (ko)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200042629A (ko) * 2018-10-16 2020-04-24 주식회사 키센스 인공지능 학습을 위한 모바일 기기의 터치 기반 어노테이션과 이미지 생성 방법 및 그 장치
KR102112858B1 (ko) * 2020-03-03 2020-05-19 셀렉트스타 주식회사 가이드 포인트를 제공하는 ui를 이용한 학습 데이터 생성 방법 및 장치
WO2020198122A1 (en) * 2019-03-26 2020-10-01 Aivitae LLC Methods and systems for operating applications through user interfaces
KR102163818B1 (ko) 2020-06-18 2020-10-12 주식회사 테크스페이스 자동 완성형 백엔드 플랫폼 구축 장치
KR102255140B1 (ko) 2020-11-11 2021-05-24 주식회사 테크스페이스 블록체인을 통한 백엔드 플랫폼의 해킹 방지 장치
WO2022029504A1 (en) * 2020-08-06 2022-02-10 Coupang Corp. Computerized systems and methods for reducing latency in a modular platform
KR20230101086A (ko) 2021-12-29 2023-07-06 주식회사 이엔타 어플리케이션 소스 코드 자동 생성 시스템을 위한 도메인 모델 기계학습 시스템
KR20230101085A (ko) 2021-12-29 2023-07-06 주식회사 이엔타 메타데이터 아키텍처 기반 어플리케이션 소스 코드 자동 생성 시스템
WO2024158076A1 (ko) * 2023-01-27 2024-08-02 주식회사 에이아이노미스 인공지능 기반 애플리케이션 생성 인터페이스 제어 방법 및 시스템

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050050474A1 (en) * 2003-09-02 2005-03-03 Research In Motion Limited Method and data structure for user interface customization
KR101149990B1 (ko) 2004-08-16 2012-06-01 마이크로소프트 코포레이션 선택된 객체와 관련된 선택가능 소프트웨어 기능 컨트롤을디스플레이하기 위한 개선된 사용자 인터페이스
KR101423030B1 (ko) 2013-12-31 2014-07-23 주식회사 비디 컴퓨터 실행 가능한 어플리케이션 객체 분석 방법, 이를 수행하는 어플리케이션 객체 분석 서버 및 이를 저장하는 기록매체

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050050474A1 (en) * 2003-09-02 2005-03-03 Research In Motion Limited Method and data structure for user interface customization
KR101149990B1 (ko) 2004-08-16 2012-06-01 마이크로소프트 코포레이션 선택된 객체와 관련된 선택가능 소프트웨어 기능 컨트롤을디스플레이하기 위한 개선된 사용자 인터페이스
KR101423030B1 (ko) 2013-12-31 2014-07-23 주식회사 비디 컴퓨터 실행 가능한 어플리케이션 객체 분석 방법, 이를 수행하는 어플리케이션 객체 분석 서버 및 이를 저장하는 기록매체

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200042629A (ko) * 2018-10-16 2020-04-24 주식회사 키센스 인공지능 학습을 위한 모바일 기기의 터치 기반 어노테이션과 이미지 생성 방법 및 그 장치
KR102144707B1 (ko) 2018-10-16 2020-08-14 주식회사 키센스 인공지능 학습을 위한 모바일 기기의 터치 기반 어노테이션과 이미지 생성 방법 및 그 장치
WO2020198122A1 (en) * 2019-03-26 2020-10-01 Aivitae LLC Methods and systems for operating applications through user interfaces
US11068785B2 (en) 2019-03-26 2021-07-20 Aivitae LLC Methods and systems for operating applications through user interfaces
KR102112858B1 (ko) * 2020-03-03 2020-05-19 셀렉트스타 주식회사 가이드 포인트를 제공하는 ui를 이용한 학습 데이터 생성 방법 및 장치
KR102163818B1 (ko) 2020-06-18 2020-10-12 주식회사 테크스페이스 자동 완성형 백엔드 플랫폼 구축 장치
WO2022029504A1 (en) * 2020-08-06 2022-02-10 Coupang Corp. Computerized systems and methods for reducing latency in a modular platform
US11475203B2 (en) 2020-08-06 2022-10-18 Coupang Corp. Computerized systems and methods for reducing latency in a modular platform
KR102255140B1 (ko) 2020-11-11 2021-05-24 주식회사 테크스페이스 블록체인을 통한 백엔드 플랫폼의 해킹 방지 장치
KR20230101086A (ko) 2021-12-29 2023-07-06 주식회사 이엔타 어플리케이션 소스 코드 자동 생성 시스템을 위한 도메인 모델 기계학습 시스템
KR20230101085A (ko) 2021-12-29 2023-07-06 주식회사 이엔타 메타데이터 아키텍처 기반 어플리케이션 소스 코드 자동 생성 시스템
WO2024158076A1 (ko) * 2023-01-27 2024-08-02 주식회사 에이아이노미스 인공지능 기반 애플리케이션 생성 인터페이스 제어 방법 및 시스템

Similar Documents

Publication Publication Date Title
KR101917843B1 (ko) 어플리케이션 ui 자동 생성 방법 및 장치
CN108763068B (zh) 一种基于机器学习的自动化测试方法及终端
CN110275834B (zh) 用户界面自动化测试***及方法
US10810351B2 (en) Integrated document editor
JP4676225B2 (ja) スキャン・ドキュメントから電子フォームに取り込むための方法および装置
KR20190095651A (ko) 문자 학습 트레이닝 데이터 생성 장치 및 그 방법
KR102576276B1 (ko) 자유 핸드라이팅 모드에서 텍스트 핸드라이팅 입력의 처리
US10635413B1 (en) System for transforming using interface image segments and constructing user interface objects
KR102485303B1 (ko) 데이터 레이블링 장치 및 방법
US10678521B1 (en) System for image segmentation, transformation and user interface component construction
US11288169B2 (en) Method of, and apparatus for, handling reference images for an automated test of software with a graphical user interface
CN110765015A (zh) 一种对被测应用进行测试的方法和电子设备
JP5634972B2 (ja) テキストセグメンテーションのための方法、コンピュータプログラム製品およびシステム
CN114419621A (zh) 处理含有文字的图像的方法及装置
CN117274969A (zh) 一种***识别方法、装置、设备及介质
US20200364034A1 (en) System and Method for Automated Code Development and Construction
CN112613367A (zh) 票据信息文本框获取方法、***、设备及存储介质
CN114064010A (zh) 前端代码生成方法、装置、***及存储介质
CN114519213A (zh) 使用机器学习从标记中实现计算机辅助绘制图自动化
JP2022120308A (ja) 画像処理装置及びプログラム
KR101989960B1 (ko) 복수 개의 기계학습 모델을 사용한 실시간 필기 인식 방법, 이를 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 실시간 필기 인식 시스템
US20230343005A1 (en) Methods and Systems for Automated Structured Keyboard Layout Generation
JP6003677B2 (ja) 画像処理装置及び画像処理プログラム
CN114066402B (zh) 一种基于文字识别的自动化流程实现方法及***
CN117372286B (zh) 一种基于Python的图像噪声优化方法及***

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant