KR20140040144A - 퍼스널화되고 커스토마이징된 이동 디바이스들을 생성하기 위한 시스템 - Google Patents

퍼스널화되고 커스토마이징된 이동 디바이스들을 생성하기 위한 시스템 Download PDF

Info

Publication number
KR20140040144A
KR20140040144A KR1020137032203A KR20137032203A KR20140040144A KR 20140040144 A KR20140040144 A KR 20140040144A KR 1020137032203 A KR1020137032203 A KR 1020137032203A KR 20137032203 A KR20137032203 A KR 20137032203A KR 20140040144 A KR20140040144 A KR 20140040144A
Authority
KR
South Korea
Prior art keywords
mobile device
operating software
software package
device operating
custom
Prior art date
Application number
KR1020137032203A
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 폰클레이 인코포레이티드
Publication of KR20140040144A publication Critical patent/KR20140040144A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 그 역할이나 비지니스 모델에 관계없이 그 참가자들 모두에 대한 기존의 옵션들보다 단순한 이동 디바이스 에코시스템을 제공한다. 에코시스템은 이동 디바이스 및 운영 소프트웨어 개발 키트 및 스토어를 포함하며, 그 둘 다는 커스토마이징된 이동 디바이스들의 생성, 테스팅 및 분배뿐 아니라 그 발견, 조사 및 전달이 모두 표준 웹 브라우저를 이용하여 수행될 수 있도록 웹-기반된 서비스들로서 구현된다.

Description

퍼스널화되고 커스토마이징된 이동 디바이스들을 생성하기 위한 시스템{SYSTEM FOR CREATING PERSONALIZED AND CUSTOMIZED MOBILE DEVICES}
본 출원은 2011년 5월 5일에 출원된 계류중인 미국 출원 번호 12102032의 이익을 주장하고 이는 PCT 국제 출원이며, 본원에 그 전체가 인용에 의해 포함되는 2009년 12월 30일에 출원된 계류중인 출원번호 12649947의 부분 연속 출원이며, 그 전체가 본원에 인용에 의해 포함된다.
본 발명은 일반적으로 이동 디바이스 하드웨어 및 운영 시스템 소프트웨어의 퍼스널화 및 커스토마이징화(customization)에 관한 것이다. 본 발명은 특히 브랜딩(branding) 기구들 또는 지원 인력과 같은 엔드 유저들 및 다른 사람들이 그들의 니즈(needs)에 특정한 하드웨어 및 운영 소프트웨어를 갖는 이동 디바이스들을 생성하게 할 수 있는 시스템에 관한 것이다.
오늘날 특히 이동 전화들 및 태블릿들로서 흔히 알려지는 방대한 많은 물건들을 포함하여, 이동 인터넷 디바이스들로서 일반적으로 알려지는 폭넓은 다양한 소형인, 전형적으로 휴대용의 전자 기기들이 존재한다. 현재의 기술 상태에서, 모든 그와 같은 디바이스들은 가능한 한 많은 잠재적 고객들을 어드레싱하기 위해 제조업자에 의해 선택되는, 카메라들 또는 위치설정 시스템 수신기들과 같은 다양한 하드웨어 능력들을 포함하도록 그들의 제조업자들에 의해 설계된다. 유사하게, 제조업자들은 최소의 특정 조합들로 최대 가능한 수의 사용자들을 만족시키기 위한 목적으로, 형태 팩터, 즉 각 물건의 크기, 형상, 중량, 컬러 및 다른 물리적 속성들을 결정한다. 최종적으로, 제조업자들은 특정 기능 또는 기능들의 관련된 그룹이 가능한 한 많은 디바이스 모델들 상에 정확하게 동일한 방식으로 수행되게 하기 위해 다양한 기능들을 제공하도록 그들의 디바이스들의 운영 소프트웨어를 구성한다.
하드웨어 및 소프트웨어 조합들의 수를 제한하는 실시는 물건 개발, 제조, 판매 및 고객 지원을 위해 제조업자들이 이용하는 다양한 시스템들 및 절차들의 복잡도를 감소시킴으로써 디바이스 제조업자들에게 유익하다. 현재 제조업자들은 정확하게, 특정의 새로운 물건이 수행해야 할 것을 결정하기 위해 1차 메커니즘을 이용하며, 그것은 그들의 기존 능력들의 비용들 및 장점들이 고객들의 요망들과 상호작용하는 복합 기능이다. 그러나, 일반적으로, 엔드 유저들의 요망들은 무선 캐리어들 및 주요 소매업자들과 같은 도매 고객들에 의해 제시된 바와 같이, 그리고 외관상 합리적이지만 궁극적으로 임의적인 속성들에 의해 사람들을 카테고리화하는 관찰 연구를 통해 종종 해석된 바와 같이 어그리게이트에서 전적으로 고려된다.
제조업자들은 개별 엔드 유저들 및 엔드 유저들의 더 작은 그룹들이 상술한 대량 생산 프로세스들이 비용-효율적인 지점 솔루션들을 제공할 수 없는 특별한 니즈를 갖는 경향이 있음을 인식한다. 따라서, 현재 및 부상하는 이동 디바이스들은 소프트웨어 애플리케이션들, 또는 그들이 공통으로 칭해지는 바와 같은 "앱들(apps)"의 제공을 통해 다량의 프로그램능력을 제공한다. 이들 앱들은 사람들이 그들의 이동 디바이스들에 폭넓고 다양한 소프트웨어 기능을 추가하게 허용한다. "System for Creation and Distribution of Software Applications Usable on Multiple Mobile Device Platforms"란 명칭의, 인용에 의해 본원에 포함되는 U.S. 특허출원 09/12649947은 엔드 유저들을 포함하여, 폭넓고 다양한 사람들에 의해 그와 같은 앱들의 생성을 가능하게 하는 종합적인 시스템을 개시한다.
그러나, 앱들은 특정 클래스의 이동 디바이스의 베이스 운영 소프트웨어를 조정하는 능력을 제공하지 않는다. 즉, 운영 소프트웨어에 제공된 기능들에 대해, 제조업자는 앱들을 갖고 있을지라도, 아마도 마이너(minor) 선호도들 설정들을 제외하고, 그 기능들이 변경되지 않도록 일반적으로 이동 디바이스의 기본 행동, 기능적 상호작용들 및 룩 앤드 필(look and feel)을 제약한다. 예를 들어, 어드레스 북, 전화 서비스 및 단문 메시지 서비스와 같은 공통 능력들을 제공하는 이동 전화 디바이스는 제조업자의 스타일 및 소프트웨어 개발 이력에 따라, 이들 능력들에 대한 특정 프레젠테이션뿐 아니라, 그들 사이에 상호작용하는 특정 방식을 제공할 것이다. 이들 기능들을 수행하는 운영 소프트웨어는 일반적으로 각 기능을 식별하고 선택하기 위한 텍스트 라벨들 또는 그래픽 아이콘들을 이용할지 여부와 같은, 마이너의 구성능력 옵션들을 제공할 것이지만, 일반적으로 능력들 및 그들의 관련된 기능들이 서로 또는 다른 앱들과 상호작용하는 방법에 대해 상당한 변경을 행하는 어떠한 능력도 제공하지 않는다.
또한, 애드-온(add-on) 소프트웨어 앱들은 본질적으로 이동 디바이스에 빌트된 특정 하드웨어를 변경하는 어떠한 능력도 제공할 수 없다. 대부분의 이동 디바이스들은 임의선택적 능력들을 제공하는 하드웨어 모듈들을 추가하거나 접속하기 위한 커넥터들 및 슬롯들을 제공하며, 소프트웨어 앱들과 커플링되어 이들 하드웨어 애드-온들이 상당히 정교해질 수 있는 한편, 여기서 너무 이러한 실시가 베이스 디바이스에 없는 모듈들을 추가하는 것으로 제한된다. 이는 원하지 않는 빌트-인 디바이스를 제거할 수 없다.
마지막으로, 애드-온 소프트웨어 앱들이나 플러그-인 하드웨어 모듈들 어느 쪽도 디바이스의 형태 팩터를 완전하게 변경하는 어떠한 능력도 제공하지 못한다. 다양한 특정 니즈들, 또는 단순하게 대중 시장과 맞추어 조정하지 못하는 선호도들을 갖는 엔드 유저들은 일반적으로 이용가능한 옵션들에 의해 불만족한 상태로 남아있다.
그러면, 필요한 것은 엔드 유저들의 그룹 대신에 동작하는 다른 사람들 또는 엔드 유저들이 이동 디바이스들의 퍼스널 또는 커스톰 구성들을 생성할 수 있으며 그들을 단일 유닛만큼 소형으로 따로따로 제조하게 하는 시스템이다. 그와 같은 시스템은 바람직하게는 또한 분배 메커니즘을 제공할 것이며, 유사한 니즈를 가질 수 있는 다른 사람들은 기존의 커스톰 구성들을 찾고 구매할 수 있거나, 기존의 것을 더 수정할 수 있다.
따라서 본 발명의 주된 목적은 형태 팩터 속성들 및 빌트-인 모듈들을 포함하는 하드웨어, 및 운영 소프트웨어 둘 다의 극도의 커스토마이징화를 가능하게 하는 이동 디바이스 제조 및 분배 시스템을 생성하는 것이다. 따라서, 본 발명의 장점은 이동 디바이스 개발 키트(kit) 및 스토어가 커스토마이징된 이동 디바이스들의 생성, 테스팅 및 분배뿐 아니라, 이동 디바이스들의 발견, 조사 및 전달이 모두 표준 웹 브라우저를 이용하여 수행될 수 있도록 웹-기반된 서비스로서 제공된다는 것이다. 추가적인 장점은 본 발명에 따른 이동 디바이스 개발 키트가 프로페셔널 소프트웨어 엔지니어일 수 있거나 그렇지 않을 수 있는 엔드 유저의 니즈에 특정한 운영 소프트웨어 능력들의 통합된 세트를 고안하고 구성하는 능력을 제공하며, 그 이동 디바이스 개발 키트가 선택된 이동 디바이스에 설치되게 한다는 것이다. 추가적인 장점은 본 발명에 따른 이동 디바이스 개발 키트가 다양한 하드웨어 모듈들, 형성 팩터들, 컬러들 및 다른 구성가능한 속성들로부터 선택함으로써 매우 특정한 니즈를 충족시키는 이동 디바이스를 설계하며, 그 후에 그 이동 디바이스가 원하는 운영 소프트웨어로 제조, 로딩되며 전달되게 하는 능력을 제공한다는 것이다. 본 발명의 다른 장점은 또한 유사한 특정 니즈들 또는 선호도들을 갖는 다른 사용자들에 의해, 특정 이동 디바이스 설계를 지키고 이용가능하게 하는 능력뿐 아니라 필요에 따라 추가적인 수정을 제공한다는 것이다. 본 발명의 마지막 장점은 이하에서 "the foneClay Apps patent application"으로 지칭되는, "System for Creation and Distribution of Software Applications Usable on Multiple Mobile Device Platforms"란 명칭의 2009년 12월 30일에 출원된 미국 특허 출원에 설명되는 "the foneClay Apps system"으로 이하에 칭해지는 앱 개발 및 분배 시스템에 의해 제공되는 토대 상에 빌드한다는 것이며, 따라서 이것은 시스템에 의해 제공되는 다른 장점들 중 다수를 통합한다.
본 발명의 상기 및 다른 장점들은 협력 엘리먼트들의 시스템에 의해 일 형태로 실행되며, 그 각각은 이하에 상세하게 설명된다.
본 발명은 도면들과 함께 다음의 상세한 설명을 숙독하여 더 잘 이해될 것이며, 유사한 참조 부호들은 유사한 엘리먼트들을 식별하도록 이용된다.
도 1은 본 발명에 따른 이동 디바이스 커스토마이징화 시스템의 하이-레벨 블록도를 예시한다.
도 2는 본 발명에 따른 이동 디바이스 구성 스튜디오의 상세한 기능적 블록도를 예시한다.
도 3은 본 발명에 따른 이동 디바이스 분배 센서의 상세한 기능적 블록도를 예시한다.
도 4는 본 발명에 따른 이동 디바이스 빌드 엔진의 상세한 기능적 블록도를 예시한다.
도 5는 본 발명에 따른 이동 디바이스 검증 엔진의 상세한 기능적 블록도를 예시한다.
도 6은 본 발명에 따른 이동 디바이스 구성 스튜디오의 바람직한 실시예에 의해 제시된 예시적인 그래픽 사용자 인터페이스를 예시한다.
도 7은 본 발명의 시스템의 소프트웨어 엘리먼트들의 바람직한 실시예를 지원하는 예시적인 물리적 구현 아키텍처를 예시한다.
도 8은 본 발명에 따른, 이동 디바이스 제조 설비 또는 디바이스 팩토리의 상세한 기능적 블록도를 예시한다.
도 1의 하이-레벨 도면은 메인 시스템, 그 메이저 서브시스템들 및 핵심 내부 엘리먼트들 및 그와 상호작용하는 핵심 외부 엘리먼트들을 포함하여, 본 발명의 주요 엘리먼트들을 도시한다. 도면에서, 이동 디바이스 커스토마이징화 시스템(1000)은 상기 요약 섹션에 개략되며 후속하는 서브시스템 설명들에서 상세화되는 바와 같은 기능을 구체화한다. 이동 디바이스 커스토마이징화 시스템(1000)의 기능들은 도시된 바와 같이 그들 사이에서 상호작용들을 갖는, 5개의 메이저 서브시스템들 사이에 할당된다. 추가로, 6개의 핵심 내부 엘리먼트들이 도시되며, 이는 우선 이동 디바이스 커스토마이징화 시스템(1000)의 존재에 대한 이유를 구체화한다.
또한 foneClay Apps 특허 출원에 설명된 이동 애플리케이션 팩토리 시스템(100)의 확장으로서, 디바이스 커스토마이징화 시스템(1000)은 foneClay Apps 시스템의 수많은 엘리먼트들을 통합함을 주목한다. 본원에 주목된 경우를 제외하고, foneClay Apps 시스템에서의 엘리먼트들의 명칭들 및 번호들과 매칭하는 명칭들 및 번호들을 갖는 엘리먼트들은 foneClay Apps 특허 출원에 설명된 바와 같은 엘리먼트들과 동일하다. foneClay Apps 시스템의 확장으로서, 디바이스 커스토마이징화 시스템(1000)은 또한 foneClay 디바이스 시스템으로 지칭될 수 있다.
이동 디바이스 애플리케이션들(101), 이동 디바이스 애플리케이션 컴포넌트들(102), 일반 이동 디바이스 모델(103) 및 특정 이동 디바이스 모델들(104)인 foneClay Apps 시스템의 4개의 핵심 내부 엘리먼트들까지, 디바이스 커스토마이징화 시스템(1000)은 이동 디바이스 운영 소프트웨어 패키지들(1001), 이동 디바이스 컴포넌트 모델들(1002) 및 커스톰 이동 디바이스 모델들(1004)을 추가한다.
각 운영 소프트웨어 패키지(1001)는 이동 디바이스의 사용자에게 이용가능한 모든 원하는 기능들을 수행하기 위해 개발자에 의해 생성되는 로직 및 데이터의 완전한 세트이다. 제한이 아닌 예시로서, 운영 소프트웨어 패키지(1001)는 기본 전화 및 어드레스 북 기능을 제공할 수 있고 그 밖의 것을 허용할 수 없으며, 전형적인 이동 디바이스의 모든 전통적 기능에 대안적인 사용자 인터페이스를 제공할 수 있거나, 그 사이에 임의의 조합을 제공할 수 있다. 운영 소프트웨어 패키지(1001)는 설계에 의해 특정 애플리케이션들(101) 및 애플리케이션 컴포넌트들(102)을 통합할 수 있으며, foneClay Apps 시스템을 이용하여 애플리케이션들(101)을 다운로딩하고 실행함으로써 엔드 유저가 그 기능을 확장하게 허용하거나 허용하지 않을 수 있다. 도 1은 단지 4개의 운영 소프트웨어 패키지들(1001)을 도시하는 한편, 바람직한 실시예에서 실제 수는 본질적으로 제한되지 않음을 주목한다.
각 디바이스 컴포넌트 모델(1002)은 그 기능, 행동들 및 인터페이스들뿐 아니라, 크기, 중량, 핀아웃들(pinouts), 전자기 특성들 등을 포함하는, 이동 디바이스의 설계 및 구축에 이용될 수 있는 하드웨어 또는 소프트웨어 컴포넌트의 표현을 구체화한다. 컴포넌트 모델들(1002)에 의해 표현될 수 있는 실제 컴포넌트들의 예들은, 제한없이, 셀룰러 네트워크, 와이파이 핫 스팟들 및 블루투스 디바이스들과의 무선 접속성을 위한 모듈들; 시그널링, 회선 호출들 및 패킷 전송 및 수신과 같은 통신 모드들을 위한 지원; 헤드폰 잭 및 USB 커넥터와 같은 인접 디바이스들과의 유선 접속성을 위한 포트들; 1차 및 임의선택적 2차 비디오 디스플레이 스크린들, 숫자 및 영문 키패드들, 키패드 백라이트들, 스피커 볼륨 컨트롤 및 기타들과 같은 기능들을 활성화하는 여러 종류의 버튼들, 터치패드들 및 멀티터치 제스처 입력 패드들, 스피커들 및 마이크로폰들을 포함하는 다양한 인간 인터페이스 디바이스들; 가속도계들 또는 운동 및 배향 센서들, 카메라들 또는 광 센서들, 위성 위치 확인 시스템(GPS) 수신기들 및 다른 위치 센서들, 기계적 진동 발생기들 및 다른 햅틱 실행기들 및 온도계들 및 다른 온도기(temperator) 센서들과 같은 환경 센서들 및 실행기들과 같은 당업자에게 잘 알려진 수많은 항목들을 포함한다. 다시, 도 1은 단지 5개의 컴포넌트 모델들(1002)을 도시하는 한편, 바람직한 실시예에서 이들 엘리먼트들의 실제 수는 본질적으로 제한되지 않음을 주목한다.
본 발명의 바람직한 실시예에서, 컴포넌트 모델들(1002)은 1차로 사전로딩되며 이동 디바이스들의 임의의 제조업자에게 이용가능한 상용제품(off-the-shelf) 컴포넌트들만을 나타낸다. 대안적인 실시예에서, 이하에 설명되는 구성 스튜디오(120)에 대한 적절한 확장들로, 디바이스 커스토마이징화 시스템(1000) 내의 새로운 컴포넌트 모델들(1002)의 개발을 가능하게 할 수 있다.
컴포넌트 모델들(1002)의 실현은 이하에 설명되는 바와 같은 디바이스 커스토마이징화 시스템(1000)의 나머지 서브시스템들에 대한 확장들을 이용하여, 단지 앱들이라기보다는 오히려, 실제 디바이스들의 개발을 가능하게 한다. 설계 국면에서, 그와 같은 실제 디바이스들은 퍼스널화된 이동 디바이스(198)로서 제조될 수 있고 고객에게 전달될 수 있거나, 심지어 대량-커스토마이징된 이동 디바이스들(199)로서의 수량으로 생산될 수 있는 완전한 커스톰 디바이스의 전체 설계를 구체화하기 위해, foneClay Apps가 실행할 수 있는 상용제품 디바이스들을 구체화하는 foneClay Apps 시스템의 특정 이동 디바이스 모델들(104)을 능가하는, 커스톰 이동 디바이스 모델들(1004)에 의해 시스템(1000)에 나타난다.
제 1 메이저 서브시스템인, 구성 스튜디오(120)는 foneClay Apps 시스템에서와 같은 애플리케이션들(101) 및 애플리케이션 컴포넌트들(102)뿐 아니라, 이러한 디바이스 커스토마이징화 시스템(1000)을 개발하는 능력을 제공하는, 개발 환경과 관련된 기능들을 구체화화며, 이는 완전한 운영 소프트웨어 패키지들(1001), 컴포넌트 모델들(1002)에 의해 표현된 바와 같은 실제 컴포넌트들 및 커스톰 디바이스 모델들(1004)에 의해 표현된 바와 같은 실제 완성 디바이스들을 개발하는 능력을 제공한다. 구성 스튜디오(120)는 선천적으로 적어도 초보 개발자(165)를 위해 적합한 초보 모드 및 전문 개발자(175)를 위해 적합한 전문가 모드를 포함하는, 다수의 프로그래밍 및 모델링 패러다임들을 지원한다. 비-선천적 모드들은 또한 그들을 구성 스튜디오(120)로 불러옴으로써 지원될 수 있다. 예를 들어, 프로그래밍 모드들은 foneClay Apps 특허 출원에 설명된 바와 같이 확장될 수 있으며, 모델링 모드들은 Pro/E, 오토데스크(Autodesk) 또는 스페이스클레임(SpaceClaim)과 같은 CAD(Computer-Aided-Design) 및 CAM(Computer-Aided-Manufacturing) 툴들을 통합함으로써 확장될 수 있다. foneClay Apps 특허 출원에서 설명된 바와 같은 사용자 레벨 옵션들은 본원에서 프로그래밍 모드 세트 및 모델링 모드 세트 둘 다에 적용가능하다.
foneClay Apps 시스템에서와 같이, 구성 스튜디오(120)의 사용자는 그와 같은 툴들이 전형적이며 당업자에게 잘 알려진 바와 같은 컴퓨터 워크스테이션 또는 퍼스널 컴퓨터를 이용하여 그 능력들을 액세스한다. 도 1에서, 초보 개발자(165)는 이 목적을 위해 컴퓨터(160)를 사용하는 한편, 전문 개발자(175)는 유사하게 컴퓨터(170)를 사용한다. 어느 한쪽의 경우에, 구성 스튜디오(120)의 실제 구현은 그 자체가 컴퓨터에서 실행하는 소프트웨어 프로그램이다. 매립물들(Embedments)(126 및 127)을 이용하며 네트워크 접속들(162 및 172) 각각을 통해 통신하는 foneClay Apps 특허 출원에 설명된 2개의 실행 모드들이 본원에서 또한 적용가능하다. 디바이스 커스토마이징화 시스템(1000)에 특정된 구성 스튜디오(120)의 추가적인 엘리먼트들에 관한 상세는 도 2의 설명에 제공된다.
제 2 메이저 서브시스템인, 분배 센터(130)는 foneClay Apps 시스템에서와 같은 애플리케이션 저장소("앱 스토어")와 관련된 기능들을 구체화하지만, 디바이스 커스토마이징화 시스템(1000)에서 또한 운영 소프트웨어 패키지(1001), 컴포넌트 모델들(1002) 및 커스톰 디바이스 모델들(1004)에 대한 저장소로서 서빙한다. 분배 센터(130)는 foneClay Apps 시스템 및 foneClay 디바이스 시스템 둘 다에서 생성된 다양한 항목들에 관한 교육의 발견, 그 항목들로의 실험의 데모(demonstration) 및 최종적으로 그 항목들의 획득을 계속해서 지원한다.
분배 센터(130)는 이후의 경우에서의 매립물(139)과 함께, 네트워크 접속들(182 및 193) 각각을 이용하여 foneClay Apps 특허 출원에 설명된 바와 같은, 인터넷 고객(185), 그의 컴퓨터(180) 및 이동 디바이스(181)뿐 아니라 모바일 고객(195) 및 그 이동 디바이스(191)와 상호작용한다. 애플리케이션 다운로드들(108 및 109)은 디바이스 커스토마이징화 시스템(1000)에 유지되며, 또한 애플리케이션들(101)에 더하여 운영 소프트웨어 패키지들(1001)을 다운로딩하는 것에 적용가능하다. 운영 소프트웨어 패키지들(1001)을 위한 지원은 foneClay Apps 특허 출원에 설명된 바와 같은 상호작용(132) 및 구성 스튜디오(120)를 통해, 또한 개발자들(165 및 175)로 확장된다.
유사하게, foneClay Apps 특허 출원에 설명된 바와 같은, 분배 센터(130)의 다양한 커뮤니티, 레이팅 및 명성 능력들은 본 발명에서의 운영 소프트웨어 패키지들(1001), 컴포넌트 모델들(1002) 및 커스톰 디바이스 모델들(1004)로 확장된다.
디바이스 커스토마이징화 시스템(1000)에 새로운 것은 분배 센터(130)가 퍼스널화 및 대량-커스토마이징된 디바이스들(198 및 199)의 순서화를 가능하게 하는 능력이다. 이는 이하에 설명되는 디바이스 팩토리(190)와의 상호작용(196)을 통해 발생한다.
분배 센터(130)에 관한 더 많은 상세는 도 3의 설명에 제공된다.
제 3 메이저 서브시스템인, 빌드 엔진(140)은 본 발명에서, 또한 운영 소프트웨어 패키지들(1001)을 망라하기 위해 애플리케이션들(101) 및 애플리케이션 컴포넌트들(102) 이외의 컴파일화 및 링킹 서비스들을 확장한다. 추가로, 디바이스 커스토마이징화 시스템(1000)에서 빌드 엔진(140)은 또한 컴포넌트 모델들(1002) 및 커스톰 디바이스 모델들(1004)을 준비하기 위해, 구성 스튜디오(120)의 지원에서, CAD/CAM 소프트웨어의 전형인 레이아웃 및 구성 능력들을 제공한다. 계속해서 foneClay Apps 특허 출원에 설명된 바와 같이, 상호작용들(142, 143 및 154) 각각을 통해 구성 스튜디오(120), 분배 센터(130) 및 검증 엔진(150)과 협력한다.
빌드 엔진(140)에 관한 더 많은 상세는 도 4의 설명에서 제공된다.
이동 디바이스 커스토마이징화 시스템(1000)의 제 4 메이저 서브시스템은 임의의 foneClay Apps 시스템 또는 foneClay 디바이스 시스템 물건의 개발, 빌드 또는 제조 동안 다른 서브시스템들 및 개발자들에 의해 이용되는 이동 디바이스 시뮬레이션 및 테스팅 능력들을 제공하는 검증 엔진(150)이다. 계속해서 본 발명의 새로운 물건들을 지원하기 위해 이하에 설명되는 확장들로, foneClay Apps 특허 출원에서 설명된 바와 같이, 상호작용들(152, 153 및 154) 각각뿐 아니라 매립물(125)을 통해 구성 스튜디오(120), 분배 센터(130) 및 빌드 엔진(140)과 협력한다. 디바이스 커스토마이징화 시스템(1000)에 대한 새로운, 검증 엔진(150)은 또한 개발 동안 디바이스 컴포넌트 모델들(1002)과 커스톰 디바이스 모델들(1004)의 제조능력 테스팅을 지원하기 위해, 그리고 그들의 전달 이전에 디바이스들(198 및 199)의 팩토리 테스팅을 지원하기 위해, 상호작용(159)을 통해 디바이스 팩토리(190)와 협력한다.
검증 엔진(150)에 관한 더 많은 상세는 도 5의 설명에서 제공된다.
이동 디바이스 커스토마이징화 시스템(1000)의 제 5 및 최종 메이저 서브시스템은 상호작용(196)을 통해 통신되는 분배 센터(130) 대신에, 퍼스널화 디바이스들(198) 및 대량-커스토마이징된 디바이스들(199)의 물리적 제조를 제공하는 디바이스 팩토리(190)이다. 디바이스 팩토리(190)는 또한 상호작용(159)을 통해 통신된 바와 같은 검증 엔진(150) 대신에 커스톰 디바이스 모델들(1004) 및 디바이스 컴포넌트 모델들(1002)의 제조능력 테스팅을 지원한다.
디바이스 팩토리(190)에 관한 더 많은 상세는 도 8의 설명에 제공된다.
도 2는 도 1 설명에서 개략된 기능을 구체화하는 메이저 기능 모듈들을 도시하는, 구성 스튜디오(120)를 더 상세하게 도시한다. 도 1에서와 같이, 구성 스튜디오(120) 밖의 상당한 외부 인터페이스들 및 대응하는 협력 엘리먼트들이 또한 도시된다. 도 2에 도시되는 분배 센터(130), 빌드 엔진(140), 검증 엔진(150), 서비스 상호작용들(132, 142 및 152), 매립물들(124 및 125), 컴퓨터들(160 및 170), 네트워크 접속들(162 및 172) 및 매립물들(126 및 127)은 실질적으로 도 1 및 foneClay Apps 특허 출원의 문맥에서 이미 설명된 바와 같다.
도면의 바닥부에서 시작하는 것은 임의의 현대 소프트웨어 프로그램에서 전형적으로 발견되는 기본 모듈들이다. 네트워크 통신 지원 모듈(201)은 디바이스 커스토마이징화 시스템(1000)의 다른 서브시스템들과의 접속성을 제공하며, 사용자 인터페이스 지원 모듈(202)은 초보 개발자(165)와 같은 구성 스튜디오(120)의 사용자에게 시각적으로 정보를 제시하기 위한 툴들을 제공한다. 이들 모듈들은 정확하게 foneClay Apps 특허 출원에 설명된 바와 같다.
애플리케이션들(101)뿐 아니라 운영 소프트웨어 패키지들(1001) 및 커스톰 디바이스 모델들(1004)의 생성을 위한 환경으로서, 구성 스튜디오(120)에 기초하는 것은 비주얼 및 XML-기반된 표현 언어(210)이다. 개발자들이 foneClay Apps 시스템 또는 foneClay 디바이스 시스템 물건에 대한 그들의 사상들의 논리적, 구조적, 시간적, 그래픽, 물리적 및 다른 엘리먼트들을 표현할 것이 이 언어이다. 이러한 언어는 실질적으로 foneClay Apps 특허 출원에 설명된 바와 같으며, 공통 CAD/CAM 소프트웨어에 이용된 것들과 유사한 언어 엘리먼트들을 이용하여 물리적 속성들 및 부품을 표현하기 위해 본 발명에서 확장된다.
따라서, 비주얼 및 XML-기반된 표현 언어(210)는 임의의 애플리케이션(101), 애플리케이션 컴포넌트(102), 운영 소프트웨어 패키지(1001), 컴포넌트 모델(1002) 또는 커스톰 디바이스 모델(1004)의 모든 다양한 양상들이 표현되는 일반 형태로서, 구성 스튜디오의 모든 모듈들의 기저가 되며 이들을 인터레이싱(interlace)한다.
비주얼 프로그래밍 설계 툴킷(220) 및 멀티미디어 사용자 인터페이스(UI) 설계 툴킷(230)은 계속해서 메이저 모듈들일 것이며 foneClay Apps 특허 출원에 설명된 바와 같이 남아있다. 본 발명에서 이들은 또한 기존의 운영 소프트웨어를 증대시키기보다는 오히려 디바이스의 기본 운영 소프트웨어로서 자립하도록 설계되는 것을 제외하고 애플리케이션들(101)과 상당히 유사한 운영 소프트웨어 패키지들(1001)의 설계를 지원한다.
본 발명에 대해 새로운 것은 특히 워크플로우에 대한 팔레트 및 캔버스 메타포(metaphor)를 유지하는, 구식의 툴킷들에서와 동일한 소트(sort) 능력을 제공하지만, 구체적으로 물리적 캔버스(259)에 관한 물리적 설계들의 표현을 위해 설계되는 물리적 설계 툴킷(250)이다. 형상 팔레트(251)는 커스톰 디바이스 모델(1004)의 형태 팩터 및 형태를 정의하기 위한 툴들을 제공하는 한편, 컬러 팔레트(254) 및 라벨 팔레트(255)는 그 데코레이션을 가능하게 한다. 컴포넌트 팔레트(252)는 특히 상술한 바와 같은 디바이스 컴포넌트 모델들(1002)에 의해 표현된 것들에서, 내부 및 외부 부분들을 선택하고 배열하기 위한 툴들을 제공한다. 접속들 팔레트(253)는 선택된 컴포넌트들 사이의 상호작용들의 배치뿐 아니라, 애플리케이션들(101), 애플리케이션 컴포넌트들(102) 및 운영 소프트웨어 패키지들(1001)을 구축하기 위해 이용되는 사용자 인터페이스 및 서비스 객체들과 같은 소프트웨어 엘리먼트들과의 상호작용들을 가능하게 한다.
유사하게, foneClay Apps 시스템 구성 스튜디오로부터의 다양한 라이브러리 캐시들은 본원에서, 매립가능한 앱 라이브러리 캐시(211), 서비스 객체 라이브러리 캐시(212) 및 UI 객체 라이브러리 캐시(213)를 포함하여 유지된다. 이들에는 본 발명에서 물리적 설계 툴킷(250)에서 이용되는 객체들을 제공하는 형상 라이브러리 캐시(217) 및 컴포넌트 라이브러리 캐시(218)가 합류된다.
디바이스 선택기(214), 라이브러리 클라이언트(215) 및 제출 클라이언트(216)는 실질적으로 foneClay Apps 특허 출원에 설명된 바와 같으며, 본 발명의 새로운 물건들을 지원하기 위해 확장된다.
검증 툴킷(240)은 구성 스튜디오(120)의 본질적 부분으로 남아있다. 다른 모듈들에서와 같이, 설계의 물리적 양상들을 시뮬레이트하고 테스트하기 위해 본 발명에서 확장된다. 일반 모델 모듈(241)은 도면상에 더 잘 맞춰지도록 그 명칭이 단축된 상태로, foneClay Apps 특허 출원으로부터의 일반 디바이스 모델 테스팅 모듈(241)에서와 동일하다. 인터페이스 시뮬레이터(242)는 foneClay Apps 시스템으로부터의 일반 이동 디바이스 인터페이스 시뮬레이터(242)와 유사하지만, 본 발명에서 2가지 방향들로 확장된다. 먼저, 특정 이동 디바이스 모델들(104)의 사용자 인터페이스 룩 앤드 필뿐 아니라, 임의의 선택된 운영 소프트웨어 패키지(1001)의 사용자 인터페이스 룩 앤드 필을 시뮬레이팅하는 변형들을 제공한다. 둘째로, 특정 이동 디바이스 모델(104) 또는 커스톰 이동 디바이스 모델(1004)의 형태, 레이아웃 및 데코레이션을 시뮬레이트하기 위해 스킨들을 제공한다. 유사하게, 컴포넌트 시뮬레이터(243)는 임의의 컴포넌트 모델들(1002)의 테스팅을 지원하기 위해 본 발명에서 다시 확장되는 foneClay Apps 특허 출원으로부터의 일반 이동 디바이스 능력 시뮬레이터(243)와 유사하다.
빌드 엔진 클라이언트(244) 및 검증 엔진 클라이언트(245)는 실질적으로 그들의 프로세서들에서와 동일하며, 다시 한번 물리적 설계 툴킷(250), 컴포넌트 모델들(1002) 및 커스톰 디바이스 모델들(1004)에 의해 제공되는 추가적인 설계 정보를 운반하도록 확장된다.
본 발명에서, 검증 툴킷(240)은 설계의 물리적 엘리먼트들을 취급하기 위한 시뮬레이션 환경들의 추가에 의해 강화된다. 기계적 시뮬레이터(246)는 열적, 구조적 및 다른 기계적 양상들을 모델링하고 검증하기 위한 툴들을 제공한다. 전자기 시뮬레이터(247)는 유사하게 설계의 전기, 전자, 자기 및 라디오 주파수 양상들을 모델링하고 검증하기 위한 툴들을 제공한다. 이들 엘리먼트들 둘 다는 대중적인 기존 툴들의 통합에 의해 바람직한 실시예에서 구현되고, foneClay 룩 앤드 필을 매칭하도록 수정되며, 초보 개발자(165) 및 전문 개발자(175) 둘 다의 니즈를 충족시키기 위해 필요에 따라 간략화 및 집적되며, 엔드 유저 컴퓨터들(160 또는 170) 상의 컴퓨팅 요구들을 최소화하기 위해 필요에 따라 검증 엔진 클라이언트(245)를 통해 검증 엔진(150)으로 집적된다.
구성 스튜디오(120)의 모든 사용자-대면 기능을 함께 묶는 것은 그래픽 사용자 인터페이스(260)이다. 이것은 이미 설명된 기능들의 각각에 대한 그래픽 및 상호작용 지원을 제공하는 설계 모듈이다. 그래픽 사용자 인터페이스(260)는 당업자에게 잘 알려진 기술들을 이용하여, 기능적 모듈들과 집적하며 사용자 인터페이스 지원 모듈(202)의 특징들에 의존하는 방식으로 구현된다. 본 발명의 바람직한 실시예에서의 사용자 인터페이스(260)를 위해 이용될 수 있는 예시적인 레이아웃이 도 6에 도시된다.
도 3은 도 1 설명에서 개략된 기능을 구체화하는 메이저 기능 모듈들을 도시하는, 분배 센터(130)를 더 상세하게 도시한다. 도 1에서와 같이, 분배 센터(130) 밖의 상당한 외부 인터페이스들 및 대응하는 협력 엘리먼트들이 또한 도시된다. 도 3에 도시되는 구성 스튜디오(120), 빌드 엔진(140), 검증 엔진(150), 서비스 상호작용들(132, 143 및 153), 인터넷 고객의 컴퓨터(180) 및 네트워크 접속(183), 인터넷 고객의 이동 디바이스(180), 이동 고객의 이동 디바이스(191), 네트워크 접속(193) 및 매립물(139), 및 애플리케이션 다운로드들(108 및 109)은 실질적으로 이미 도 1의 문맥에서 설명된 바와 같다. 유사하게, 네트워크 통신 지원 모듈(301), 사용자 인터페이스 지원 모듈(302), 사용자 데이터베이스 모듈(303), 웹 애플리케이션 서버(304), 사용자 상호작용 서비스들(340) 및 분배 서비스들(350)은 모두 실질적으로 foneClay Apps 특허 출원에 설명된 바와 같다.
분배 센터(130)의 핵심은 각각 하나에 관한 정보 또는 메타데이터와 함께, 애플리케이션들(101), 애플리케이션 컴포넌트들(102), 운영 소프트웨어 패키지들(1001), 디바이스 컴포넌트 모델들(1002) 및 커스톰 디바이스 모델들(1004)을 저장하는 능력이다. 라이브러리 서비스 모듈(310)은 이러한 기능들의 세트를 구체화한다. 탐색 툴킷(311)은 탐색 키들로서 저장된 항목들의 다양한 속성들을 이용하여, 사용자들에게 다양한 저장소들에서의 특정 항목들을 브라우징하고 탐색하는 능력을 제공한다. 앱 저장소(312), SO 저장소(313) 및 UO 저장소(314)는 모두 foneClay Apps 시스템으로부터 모두 변경되지 않는다. 본 발명에서, 각각 이용가능한 디바이스 컴포넌트 모델들(1002), 커스톰 디바이스 모델들(1004) 및 운영 소프트웨어 패키지들(1001)을 각각 저장하는, 디바이스 컴포넌트 모델 저장소(315), 커스톰 디바이스 모델 저장소(316) 및 OS(운영 소프트웨어) 저장소(317)가 합류된다.
온-디맨드(On-Demand) 순서 서비스(320)는 foneClay Apps 특허 출원에 설명된 온-디맨드 다운로드 서비스(320)의 확장이다. 이 모듈은 라이브러리 서비스들 모듈(310)에 저장되는 항목을 획득하는 것과 관련된 기능들을 제공한다. 그 특정 이동 디바이스 선택기(321), 빌드 엔진 클라이언트(322), 전자상거래 엔진(323) 및 이동 디바이스 OTA(Over The Air) 전달 모듈(324)은 foneClay Apps 시스템에서의 모듈들과 동일하다. 본 발명에서 새로운 것은 퍼스널화되며 대량-커스토마이징된 디바이스들(198 및 199)의 요청에 관한 제조를 가능하게 하도록 상호작용(196)을 통해 분배 센터(150)를 디바이스 팩토리(190)에 링크하는 디바이스 팩터 클라이언트(329)이다.
이동 디바이스 및 애플리케이션 데몬스트레이터(Demonstrator)(330)는 foneClay Apps 특정 출원에서 설명된 이동 애플리케이션 데몬스트레이터(330)의 확장이다. 계속해서 고객들이 foneClay Apps 시스템들 및 foneClay 디바이스 시스템 물건들과 상호작용할 수 있는 메커니즘을 제공함으로써 셀프 교육의 수단을 제공한다. 본 발명에서는 애플리케이션들(101) 뿐 아니라 운영 소프트웨어 패키지들(1001)을 지원하도록 확장되며, 이 운영 소프트웨어 패키지들(1001)은 일반 데몬스트레이터(331)를 통한 일반 이동 디바이스 모델(103)의 문맥뿐 아니라, 특정 디바이스 선택기 및 시뮬레이터들(332)을 통해, 특정 이동 디바이스 모델들(104) 및 현재의 커스톰 이동 디바이스들(1004) 둘 다의 문맥에서의 라이브 시뮬레이션들을 제공한다.
분배 센터(130)의 모든 사용자-대면 기능을 함께 묶는 것은 그래픽 사용자 인터페이스(370)이다. 이것은 이미 설명된 기능들의 각각에 대한 그래픽 및 상호작용 지원을 제공하는 설계 모듈이다. 그래픽 사용자 인터페이스(370)는 당업자에게 잘 알려진 기술들을 이용하여, 기능적 모듈들과 집적하며 사용자 인터페이스 지원 모듈(302)의 특징들에 의존하는 방식으로 구현된다. 바람직한 실시예에서, 그래픽 사용자 인터페이스(370)의 레이아웃은 고개들 및 개발자들의 선호도들에 따라 동적으로 변화할 것이며, 일반적으로 흔히 사용되는 소셜 네트워킹, 앱 스토어 및 개발 프로젝트 지원 시스템들에서 전형적으로 발견되는 특징들의 조합과 비슷할 수 있다.
도 4는 도 1 설명에서 개략된 기능을 구체화하는 메이저 기능 모듈들을 도시하는, 빌드 엔진(140)을 더 상세하게 도시한다. 도 1에서와 같이, 빌드 엔진(140) 밖의 상당한 외부 인터페이스들 및 대응하는 협력 엘리먼트들이 또한 도시된다. 도 4에 도시되는 구성 스튜디오(120), 분배 센터(130), 검증 엔진(150), 서비스 상호작용들(142, 143 및 154), 및 매립물(124)은 실질적으로 이미 도 1의 문맥에서 설명된 바와 같다. 유사하게, 네트워크 통신 지원 모듈(401), 계산 자원 관리 모듈(402) 및 빌드 서비스(420)는 모두 실질적으로 foneClay Apps 특허 출원에 설명된 바와 같다.
본 발명에서, 빌드 엔진(140)은 애플리케이션들(101), 애플리케이션 컴포넌트들(102) 및 새로운 운영 소프트웨어 패키지들(1001)에 대한 빌드들을 지원하는, foneClay Apps 시스템으로부터의 소프트웨어 빌드 스택뿐 아니라, 디바이스 컴포넌트 모델들(1002) 및 커스톰 디바이스 모델들(1004)에 대한 빌드들을 지원하는 새로운 하드웨어 빌드 스택 둘 다를 포함한다. 비록 컴파일화 세트(411)에서 취하고, 차례로 일반 빌드 툴킷(432), 소프트웨어 언어 해석기(433), 디바이스 선택기(434), 코드 발생기들(43), 사전컴파일링된 객체들(436) 및 타겟 디바이스 SDK들 및 툴 체인들(440)을 이용하며, 타겟 실행가능(412)을 생성하면서, 도면에 공간을 만들기 위해 명칭들 중 일부가 단축되었을지라도, 소프트웨어 스택은 크게 변경되지 않는다. 빌드 스택의 코어를 형성하는 foneClay Apps 시스템의 서비스 적응 프레임워크(430)는 소프트웨어 빌드 스택에서 이용되는 툴들과 유사한 하드웨어 개발 툴들을 제공하기 위해 본 발명에서 강화된다. 그와 같이 하여 확장된 것은 이제 서비스/컴포넌트 적응 프레임워크이다.
하드웨어 빌드 스택에 대한 입력인, 모델 세트(412)는 비주얼 및 XML-기반된 표현 언어(431)에서 빌트되는 설계의 물리적 양상들을 나타낸다. 이 언어는 소프트웨어 스택에 의해 사용된 것과 동일하며, 물리적 속성들 및 부품을 표현하도록 확장된다; 이 언어는 또한 구성 스튜디오(120)에서 이용되는 언어(210)와 동일하다.
서비스/컴포넌트 적응 프레임워크 내에서, 하드웨어 빌드 스택의 변형 엘리먼트들은 모델 세트(412)에 나타난 바와 같은 그들의 관계들 및 컴포넌트들을 구현하기 위해 필요한 공통 엘리먼트들 및 프레임워크들을 포함하는 일반 모델 툴킷(462)으로 시작한다. 당업자에게, 이것은 개발 팀의 공통 베이스라인을 형성하는 글루 로직(glue logic) 및 플랫폼들로서 용이하게 인식가능할 것이다. 다음은 기계, 전기, 전자 및 데코레이티브와 같은 물리적 모델의 서로 다른 양상들에 특정한 가능하게는 여러 표준 언어들로 표현되는 관련된 설계들의 그룹으로 언어(431)에서 표현된 바와 같은 설계를 변환하는 하드웨어 언어 해석기이다. 엘리먼트 선택기(464)는 방대하게 다양한 이용가능한 상용제품 컴포넌트들로부터 호환가능한 부분들의 선택을 제어한다. 모델 합성기들(465)은 그 후에 벤더들 또는 다른 개발자들에 의해 제공되는 상세한 컴포넌트 모델들(466)로 표현되고 번역된 바와 같은 개발자의 설계를 조합하면서, 실제로 디바이스를 빌드하기 위해 필요한 깊은 상세들을 표준화하고 완성하도록 실행된다. 레이아웃 엔진(467)은 개발자의 의향에 따르면서 최적으로 공간을 이용하도록 초기의 정교한 배치를 결정한다.
프레임워크(430)에서 벗어나서, 설계의 각 피스에 적절한 대로, 설계가 디바이스-특정 하드웨어 컴포넌트 CAD/CAM 개발 키트들 및 툴 체인들(450)로 핸딩 오프된다. 이 단계는 타이밍 분석, 간섭 분석, 열적 분석 및 당업자에게 잘 알려진 바와 같은 기타들과 같은 중요한 단계들을 포함하여, 최종 합성 및 검증을 수행한다. 기능적 응집 및 프로세싱 로드 분배를 위해 적절한 범위까지, 이 단계는 빌드 서비스(420) 내부의 검증 엔진 클라이언트(423)를 통해 검증 엔진(150)과 협력하여 발생한다. 이 지점에서의 특정 관심사는 검증 엔진(150)이 디바이스 팩토리(190)에 위임하며 그 후에 빌드 엔진(140)으로 되돌려 전달하는 제조능력의 검증이다.
이러한 장황한 프로세스의 종료에서, 분배 센터(130)에 저장될 수 있으며 차례로 제조를 위해 디바이스 팩토리(190)에 넘겨질 수 있는 커스톰 디바이스 하드웨어 모델(415)이 완성된다.
도 5는 도 1 설명에서 개략된 기능을 구체화하는 메이저 기능 모듈들을 도시하는, 검증 엔진(150)을 더 상세하게 도시한다. 도 1에서와 같이, 검증 엔진(150) 밖의 상당한 외부 인터페이스들 및 대응하는 협력 엘리먼트들이 또한 도시된다. 도 5에 도시되는 구성 스튜디오(120), 분배 센터(130), 빌드 엔진(140), 서비스 상호작용들(152, 153, 154 및 159), 및 매립물(125)은 실질적으로 이미 도 1의 문맥에서 설명된 바와 같다. 유사하게, 네트워크 통신 지원 모듈(501), 계산 자원 관리 모듈(502), 검증 서비스(560) 및 상호작용 검증 프레임워크(530)는 모두 실질적으로 foneClay Apps 특허 출원에 설명된 바와 같다.
본 발명에서, 검증 엔진(150)은 애플리케이션들(101), 애플리케이션 컴포넌트들(102) 및 새로운 운영 소프트웨어 패키지들(1001)의 테스팅을 지원하는 foneClay Apps 시스템에서와 같은 소프트웨어 검증뿐 아니라, 디바이스 컴포넌트 모델들(1002) 및 커스톰 디바이스 모델들(1004)들을 테스팅하는 하드웨어 검증 툴들 지원 둘 다를 제공하도록 강화된다. 검증되는 객체들(510)은 계속해서 검증 거래를 위한 입력 세트를 나타낸다; 본 발명에서 소프트웨어 컴포넌트들 및 물리적 모델들 둘 다를 유지하는 능력으로 강화된다. 비록 테스트 플랜 데이터베이스(550)의 모든 모듈들에서의 테스트들의 수 및 다양성이 운영 소프트웨어 패키지들(1001)을 지원하기 위해 반드시 더 클지라도, 소프트웨어 부분은 크게 변경되지 않는다. 디바이스 테스트 경우들(551) 및 앱/컴포넌트 테스트들(552)은 테스트 하의 항목의 물리적 양상들에 관련하는 테스트들을 포함하도록 본 발명에서 확장된다. 서비스 적응 프레임워크 테스트들(553)은 프레임워크(430)의 소프트웨어 측으로부터 승계되는 설계의 양상들을 테스팅하는데 초점을 맞추도록 남아있는 한편, 컴포넌트 적응 프레임워크 테스트들(554)은 프레임워크(430)의 하드웨어 측으로부터 승계받은 물리적 양상들에 초점을 맞추는 테스트들을 제공한다. 유사하게 자동 검증 프레임워크(520) 내에서, 테스트 경우 실행 구동기(521), 성공 분석기(522) 및 디바이스 인터페이스(523)는 모두 소프트웨어 양상들에 더하여 설계의 물리적 양상들을 테스팅하는 것을 지원하도록 확장된다. 테스트 디바이스 라이브러리(540) 내에서, 일반 모델 시뮬레이터(541), 특정 모델 선택기(542) 및 특정 모델 시뮬레이터(543)는 본질적으로 변경되지 않은 채로 남아있는 한편, 특정 디바이스들(544)의 세트는 각 대량-커스토마이징된 디바이스(199)의 인스턴스를 포함하도록 확장된다; 일회성 퍼스널화 디바이스들(198)은 라이브러리에 포함되지 않는다. 그러나, 개별 컴포넌트 모델들(545)은 확장적으로 재사용되기 때문에, 외부 벤더들에 의해 제공되든지 또는 foneClay 디바이스 시스템 내에 설계되든지 간에 테스트 디바이스 라이브러리(540)에 추가된다.
검증 엔진(150)에 대해 전적으로 새로운 것은 디바이스 모델(1004) 또는 컴포넌트(1002)가 실행가능하게 생산 라인으로부터 나타날 수 있는지 여부를 검증하기 위해 상호작용(159)을 통해 디바이스 팩토리(190)와 그리고 함께 작동하는 제조능력 테스트들(555) 및 제조능력 검증기 클라이언트(529)이다.
도 6은 foneClay Apps 특허 출원으로부터 변경되지 않는다. 일반적으로, 구성 스튜디오(120)의 새로운 엘리먼트들은 팔레트, 캔버스 및 툴킷 메타포들의 유지로 인해 GUI(260)의 대응하는 엘리먼트들로 원활하게 맞춰진다. 따라서, foneClay Apps 특허 출원에서의 도면의 설명은 충분하며, 본원에 인용에 의해 포함된다.
도 7은 이동 디바이스 커스토마이징화 시스템(1000)의 계산 엘리먼트 및 그 상호작용 엘리먼트들을 위한 물리적 구현 아키텍처를 도시하며, 여기서 도 1에 도시된 기능적 엘리먼트들의 각각이 실행될 수 있으며 상호접속될 수 있다. 이 도면은 아래의 도 8에서 설명되는 디바이스 팩토리(190)에서의 제조 라인의 물리적 컴포넌트들을 제외하고 시스템의 모든 양상들을 커버한다. 따라서, foneClay Apps 특허 출원에서 도 7의 설명은 충분하여 본원에 인용에 의해 포함된다.
도 8은 도 1 설명에 개략된 기능을 구체화하는 메이저 기능 모듈들을 도시하는, 디바이스 팩토리(190)를 더 상세하게 도시한다. 도 1에서와 같이, 디바이스 팩토리(190) 밖의 상당한 외부 인터페이스들 및 대응하는 협력 엘리먼트들이 또한 도시된다. 도 8에 도시되는 분배 센터(130), 검증 엔진(150) 및 서비스 상호작용들(158 및 196)은 실질적으로 도 1의 문맥에 이미 설명된 바와 같다.
도면의 바닥부에서 시작하는 것은 소프트웨어 제어에 적어도 부분적으로 의존하는 임의의 현대 서브시스템에서 전형적으로 발견되는 기본 모듈들이다. 네트워크 통신 지원 모듈(901)은 디바이스 커스토마이징화 시스템(1000)의 다른 서브시스템들과의 접속성을 제공하며, 디바이스 팩토리(190)의 소프트웨어 엘리먼트들이 실행하는 컴퓨터 하드웨어에 대해 적합한 네트워킹 하드웨어 구동기들, TCP/IP 프로토콜 스택 구현, 메시지 구조 파싱(parsing) 툴킷들, 프로세스-간 메시지-전달 소프트웨어 버스로서 공통이며 잘 알려진 컴포넌트들을 포함한다. 배경 서비스로서, 디바이스 팩토리(190)는 구성 스튜디오(120) 및 분배 센터(130)에서의 모듈들과 필적하는 사용자 인터페이스 지원 모듈을 갖지 않는다. 디바이스 팩토리(190)는 그러나, 그 다른 모듈들의 동작을 제공하는 계산 자원들(902)을 통합하며, 그 일부는 서버 소프트웨어로서 구현되며 그 일부는 자동화 양상을 갖는다.
배경 서비스로서, 시스템(1000)의 나머지와의 상호작용을 지원하기 위해 디바이스 팩토리(190)의 활성 모듈은 제조 서비스(920)이다. 제조 서비스 모듈(920) 내에서, 서비스 응답자 모듈(921)은 요청들을 그들의 적절한 처리기들에 전달하며, 결과들을 리턴하는, 서비스 상호작용들(196 및 159)을 통한 검증 엔진(150)의 제조능력 검증기 클라이언트(529) 및 분배 센터(130)의 디바이스 팩토리 클라이언트(329)로부터의 요청들을 수신하는 것을 담당한다.
순서 프로세싱 서비스(923)는 분배 센터(130)와의 상호작용(159)을 지원하는 제조 서비스(920)의 서브세트이다. 순서 프로세싱 서비스(923)의 업무는 하나 또는 둘 이상의 특정 디바이스들(198 또는 199)의 구축 및 전달을 위해 디바이스 팩토리 클라이언트(329)로부터의 요청들을 처리하는 것이다. 그 순서는 정확하게 하드웨어가 생성하는 것이 무엇인지를 설명하는 하나 또는 둘 이상의 커스톰 디바이스 모델들(1004), 생성된 항목들에 설치하는 하나 또는 둘 이상의 운영 소프트웨어 패키지들(1001), 및 얼마나 많은 인스턴스들을 생성하고 그들을 어디로 수송할지에 관한 정보를 포함하는 제조되는 객체들에 대한 디스크립터들(Descriptors)의 형태로 된다. 순서 프로세싱 서비스(923)는 요청된 순서를 실행하기 위해 디바이스 팩토리(190)의 다른 모듈들과 상호작용한다. 특히, 특정 순서에 대한 다양한 생성 절차들이 제조 규칙들 데이터베이스(930)로부터 이끌어지며 이하에 설명되는 생산 라인 엘리먼트들을 구동하도록 이용된다.
제조능력 검증기 서비스(925)는 검증 엔진(150)과의 상호작용(196)을 지원하는 제조 서비스(920)의 서브세트이다. 그 업무는 제조되는 객체들의 디스크립터들(910)을 통해 운반되는, 특정 커스톰 디바이스 모델(1004) 또는 디바이스 컴포넌트(1002)가 실행가능하게 생성될 수 있는지 여부에 관한 판단들을 위해 제조능력 검증기 클라이언트(529)로부터의 요청을 처리하는 것이다. 제조능력 검증기 서비스(925)는 제조 규칙들 데이터베이스(930), 특히 제조능력 테스트들(935)로부터의 정보를 이용하여 필요한 분석을 수행한다.
전술한 바에서 암시된 바와 같이, 제조 서비스(920)의 동작에 필수적인 것은 제조 규칙들 데이터베이스(930)이다. 이 모듈은 디바이스 팩토리(190)의 물리적 부분들을 구동하기 위해 요구되는 모든 정보, 및 커스톰 디바이스 모델(1004) 또는 디바이스 컴포넌트 모델(1002)을 실제 물리적 항목으로 변환하도록 요구되는 모든 정보를 포함한다. 제조 규칙들 데이터베이스(930)는 다음을 포함하지만 그로 제한되지는 않는, 다수의 정보 엘리먼트들을 통합한다.
컴포넌트 맞춤 규칙들(931)은 특정 커스톰 디바이스 모델(1004)에 포함되는 컴포넌트들 및 디바이스 컴포넌트 모델들(1002)이 그들의 형태 팩터들, 전기 및 기계적 인터페이스 사양들 및 호환성 정보를 포함하여, 함께 맞출 수 있는 방법을 설명한다. 즉, 컴포넌트 데이터 시트 또는 애플리케이션 가이드에서 전형적으로 발견되는 임의의 정보가 이 모듈에서 구체화된다. 이 정보는 제조능력을 판단하는데뿐 아니라 항목의 생성을 가이드하는데 이용된다.
운영 소프트웨어(OS) 호환성 규칙들(932)은 특정 커스톰 디바이스 모델(1004)을 위해 요구되는 하드웨어 컴포넌트들과 운영 소프트웨어 패키지들(1001) 사이의 허용된 관계들을 구체화한다. 제조 서비스(920)는 모델(1004) 및 OS(1001)가 호환가능하지 않은 순서로 진행하지 않을 것이다.
어셈블리 규칙들(933)은 특정 항목을 어셈블링하기 위해 이용되는 동작들의 순서 및 절차들을 설명한다. 이는 특정 컴포넌트들에 대한 상세한 어셈블리 절차들뿐 아니라, 엔드 항목들로서 퍼스널화된 디바이스(198) 또는 대량-커스토마이징된 디바이스들(199)의 생성을 위해 요구되는 엔드 투 엔드 절차들을 만들어내며 개별 절차들을 순서화하기 위한 로직을 포함한다.
팩토리 테스트들(934)은 디바이스 팩토리(190)로부터의 그 릴리스 이전에 엔드 항목 상에 실행되는 테스트 절차들을 구체화한다.
이전에 언급된 바와 같이, 제조능력 테스트들(935)은 모델(1002) 또는 모델(1004)이 실제로 생성하지 않고서, 생성될 수 있는지 여부를 결정하기 위한 규칙들을 설명한다. 이는 실현불가능한 엔드 항목들을 생성하려 시도하는 것과 관련된 낭비 및 비용을 감소시키는 중요한 설계-시간 활동이다.
디바이스 팩토리(190)의 나머지는 그 생산 라인을 구성하는 엘리먼트들이다. 이들 엘리먼트들은 규칙들 데이터베이스(930)에서의 절차들에 따른 제조 서비스(920)에 의해 구동되는 1차로 자동화된 로봇식 머신들(machines)이다. 이들은 동작을 위해 본 발명에 의해 요구되지만, 그들의 특정 구현들이 반드시 고유해야 하는 것은 아니다. 사실, 본 발명의 바람직한 실시예는 디바이스 팩토리(190)의 이러한 부분을 구현하기 위해 상용화된 기존 제조 장비 및 프로세스들을 통합한다. 또한 모든 절차들이 시스템(1000) 하에 고려되는 엔드 항목들의 제조에서 실현가능하게 자동화될 수 있는 것은 아님을 주목한다. 따라서, 그와 같은 절차들을 수용하기 위해 필요한 어떤 범위든 간에, 인간 운영자들은 또한 이들 모듈들 중 임의의 모듈에 통합될 수 있다.
컴포넌트 서플라이(940)는 복합 항목들 및 생 재료들 둘 다를 포함하여, 올바른 부분들이 선택되고 특정 순서로 통합되는 것을 보장하는 내부 메커니즘들 및 팩토리를 위한 외부 서플라이 체인 둘 다를 구체화한다. 웨어하우스 저장소, 컨베이어들 및 당업자에게 잘 알려진 다른 통상적인 툴들은 이러한 모듈을 포함한다.
머시닝 설비(950)는 그와 같은 항목들을 커스톰 하우징들, 버튼들 및 다른 금속 또는 플라스틱 피스들로서 제조하고 형상화하는 머신 툴들로 이루어진다.
어셈블리 설비(960)는 픽-앤-플레이스(pick-and-place) 머신들과 같은 로봇식 팩토리 툴들 및 임의의 전자 디바이스 생산 라인 상에 공통으로 발견되는 다른 스테이션들로 이루어진다.
OS 설치 설비(970)는 순서에 대해 특정된 운영 소프트웨어 패키지(1004)와 함께 생성된 하드웨어를 발생시킨다. 엔드 항목으로의 통합 이전에 플래시 메모리 디바이스를 로딩하는 것 또는 엔드 항목을 컴퓨터 워크스테이션에 부착하는 것 및 다운로드 프로세스를 실행하는 것과 같은 수많은 방법들이 이 단계를 달성하기 위해 이용가능하다. 본 발명은 본원에 어느 절차가 이용되어야 하는지를 제약하지 않는다. 사실, 시스템(1000)의 임의의 특정 인스턴스에서 구현되는 다양한 부품 및 설계 능력들에 따라, 다수의 그와 같은 절차들이 디바이스 팩토리(190)에 필요할 수 있다.
팩토리 테스트 설비(980)는 제조 규칙들 데이터베이스(930)에서 발견되는 팩토리 테스트들(934)에 따라 동작하는, 완성된 엔드 항목의 사전-전달 검증을 제공한다. 다수의 양상들이 테스트된다. 시각적 조사기(981)는 형태 팩터 및 데코레이션을 검증한다. 기계적 테스터(982)는 견고성을 검사하고 임의의 관절들(articulations) 또는 이동하는 부분들의 적절한 기능을 보장한다. 전자 테스터(983)는 올바른 파워-업 및 OS 실행을 검사하며, (라디오 주파수 방출들을 포함하는) 전기 및 전자기 인터페이스들이 합법적이고, 안정하며 기능적으로 올바른 엘벨로프들(envelopes) 내에서 동작하는 것을 검증한다.
마지막으로, 퍼스널화된 디바이스(198)가 준비되거나 대량-커스토마이징된 디바이스들(199)의 배치(batch)가 완성될 때, 전달 설비(990)는 바깥에서 대기하는 고객, 도매 유통업자 또는 소매상업시설에 그것을 송신한다.
본 발명은 바람직한 실시예들을 참조하여 상기에 설명되었다. 본 발명은 도시되고 설명된 특정 실시예들로 제한되는 것이 아니라, 본 발명은 본원에 첨부되는 청구범위에 의한 범위로만 제한되는 것이다. 실시예들뿐 아니라 실시예들에 이용되는 다양한 기술들에 다양한 치환들, 수정들 및 확장들이 이루어질 수 있음이 당업자에게 명백할 것이다. 또한 그와 같은 치환들, 수정들 및 확장들은 본 발명의 정신 및 범위 내에 속하는 것이 당업자에 의해 인식될 것이며, 본원에 첨부되는 청구범위에 설명된 바와 같은 본 발명은 모든 그와 같은 치환들, 수정들 및 확장들을 포함하는 것이다.

Claims (36)

  1. 이동 디바이스 운영 소프트웨어 패키지를 생성하고, 관리하며 분배하기 위한 컴퓨터-구현된 방법으로서,
    이동 디바이스 운영 소프트웨어 패키지를 형성하기 위해 멀티미디어 사용자 상호작용 캔버스에 추가하도록 그래픽, 위젯(widget), 오디오/비디오 또는 햅틱 팔레트(haptic palette) 중 적어도 하나로부터의 사용자 상호작용 엘리먼트 및 데이터 및 로직 캔버스에 추가하도록 형상, 컴포넌트, 접속들, 컬러 및 라벨 팔레트 중 적어도 하나로부터의 로직 및 데이터 엘리먼트 중 적어도 하나의 선택을 수신하는 단계;
    일반 디바이스 모델 테스팅 모듈을 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지를 테스팅하는 단계;
    상기 이동 디바이스 운영 소프트웨어 패키지를 분배 센터에 제출하는 단계; 및
    상기 이동 디바이스 운영 소프트웨어 패키지를 이동 디바이스에 분배하는 단계를 포함하는, 이동 디바이스 운영 소프트웨어 패키지를 생성하고, 관리하며 분배하기 위한 컴퓨터-구현된 방법.
  2. 제 1 항에 있어서,
    상기 이동 디바이스 운영 소프트웨어 패키지를 타겟 이동 디바이스를 위해 적합한 실행가능한 운영 소프트웨어로 컴파일링하는 단계;
    복수의 특정 이동 디바이스 모델들을 이용하는 빌드들(builds)을 위해 빌드 엔진에 상기 이동 디바이스 운영 소프트웨어 패키지를 제출하는 단계; 및
    특정 이동 디바이스 모델을 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지를 검증하는 단계를 더 포함하는, 이동 디바이스 운영 소프트웨어 패키지를 생성하고, 관리하며 분배하기 위한 컴퓨터-구현된 방법.
  3. 제 2 항에 있어서,
    일반 빌드 툴킷(toolkit)을 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지의 컴파일화 세트를 수신하는 단계;
    소프트웨어 언어 해석기 및 코드 발생기를 이용하여 상기 컴파일화 세트를 번역하는 단계―여기서 상기 코드 발생기는 디바이스 선택기에 의해 결정되는 타겟 디바이스에 적어도 부분적으로 기초하여 선택됨―;
    상기 번역된 컴파일화 세트를 하나 또는 둘 이상의 사전컴파일된 객체들과 조합하는 단계; 및
    타겟 디바이스-특정 소프트웨어 개발 키트들 및 툴 체인들로부터 선택된 특정 이동 디바이스 모델을 이용하여 타겟 디바이스-특정 실행가능한 운영 소프트웨어를 생성하는 단계를 더 포함하는, 이동 디바이스 운영 소프트웨어 패키지를 생성하고, 관리하며 분배하기 위한 컴퓨터-구현된 방법.
  4. 제 3 항에 있어서,
    상기 수신하는 단계, 번역하는 단계, 조합하는 단계 및 생성하는 단계는 상기 빌드 엔진에 의해 수행되는, 이동 디바이스 운영 소프트웨어 패키지를 생성하고, 관리하며 분배하기 위한 컴퓨터-구현된 방법.
  5. 제 1 항에 있어서,
    상기 이동 디바이스 운영 소프트웨어 패키지를 테스팅하는 단계는:
    테스트 플랜 데이터베이스로부터 디바이스 테스트 경우들의 세트를 리트리브하는(retrieving) 단계;
    상기 테스트 플랜 데이터베이스로부터 애플리케이션 및 컴포넌트 테스트들의 세트를 리트리브하는 단계;
    상기 테스트 플랜 데이터베이스로부터 서비스 적응 프레임워크 테스트들의 세트를 리트리브하는 단계; 및
    상기 디바이스 테스트 경우들의 세트, 상기 애플리케이션 및 컴포넌트 테스트들의 세트 및 상기 서비스 적응 프레임워크 테스트들의 세트를 수행하기 위해 상기 일반 디바이스 모델 테스팅 모듈을 이용하는 단계를 포함하는, 이동 디바이스 운영 소프트웨어 패키지를 생성하고, 관리하며 분배하기 위한 컴퓨터-구현된 방법.
  6. 제 5 항에 있어서,
    상기 이동 디바이스 운영 소프트웨어 패키지를 검증하는 단계는:
    특정 이동 디바이스 선택기로부터 특정 이동 디바이스의 선택을 수신하는 단계;
    특정 실제 이동 디바이스 인스턴스들의 세트로부터 상기 특정 이동 디바이스에 대응하는 특정 디바이스 인스턴스를 리트리브하는 단계; 및
    상기 특정 디바이스 인스턴스를 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지를 검증하기 위해 특정 이동 디바이스 모델 시뮬레이터를 이용하는 단계를 포함하는, 이동 디바이스 운영 소프트웨어 패키지를 생성하고, 관리하며 분배하기 위한 컴퓨터-구현된 방법.
  7. 제 6 항에 있어서,
    상기 일반 디바이스 모델 테스팅 모듈을 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지를 테스팅하는 단계 및 특정 이동 디바이스 모델 시뮬레이터를 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지를 검증하는 단계는 검증 엔진에 의해 수행되는, 이동 디바이스 운영 소프트웨어 패키지를 생성하고, 관리하며 분배하기 위한 컴퓨터-구현된 방법.
  8. 그 내부에 구체화되는 컴퓨터 판독가능한 프로그램 코드를 갖는 컴퓨터 이용가능한 매체를 포함하는 컴퓨터 프로그램 물건으로서,
    상기 컴퓨터 판독가능한 프로그램 코드는 이동 디바이스 운영 소프트웨어 패키지를 생성하고, 관리하며 분배하기 위한 방법을 구현하도록 실행되게 적응되며, 상기 방법은:
    이동 디바이스 운영 소프트웨어 패키지를 형성하기 위해 멀티미디어 사용자 상호작용 캔버스에 추가하도록 그래픽, 위젯, 오디오/비디오 또는 햅틱 팔레트 중 적어도 하나로부터의 사용자 상호작용 엘리먼트 및 데이터 및 로직 캔버스에 추가하도록 형상, 컴포넌트, 접속들, 컬러 및 라벨 팔레트 중 적어도 하나로부터의 로직 및 데이터 엘리먼트 중 적어도 하나의 선택을 수신하는 단계;
    일반 디바이스 모델 테스팅 모듈을 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지를 테스팅하는 단계;
    상기 이동 디바이스 운영 소프트웨어 패키지를 분배 센터에 제출하는 단계; 및
    상기 이동 디바이스 운영 소프트웨어 패키지를 이동 디바이스에 분배하는 단계를 포함하는, 그 내부에 구체화되는 컴퓨터 판독가능한 프로그램 코드를 갖는 컴퓨터 이용가능한 매체를 포함하는 컴퓨터 프로그램 물건.
  9. 제 8 항에 있어서,
    상기 이동 디바이스 운영 소프트웨어 패키지를 타겟 이동 디바이스를 위해 적합한 타겟 실행가능한 소프트웨어로 컴파일링하는 단계;
    복수의 특정 이동 디바이스 모델들을 이용하는 빌드들을 위해 빌드 엔진에 상기 이동 디바이스 운영 소프트웨어 패키지를 제출하는 단계; 및
    특정 이동 디바이스 모델을 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지를 검증하는 단계를 더 포함하는, 그 내부에 구체화되는 컴퓨터 판독가능한 프로그램 코드를 갖는 컴퓨터 이용가능한 매체를 포함하는 컴퓨터 프로그램 물건.
  10. 제 8 항에 있어서,
    상기 이동 디바이스 운영 소프트웨어 패키지를 상기 분배 센터에 제출하는 단계는:
    상기 이동 디바이스 운영 소프트웨어 패키지를 상기 분배 센터에 송신하는 단계; 및
    상기 분배 센터에 의해 유지되는 운영 소프트웨어 저장소에 상기 이동 디바이스 운영 소프트웨어 패키지를 저장하는 단계를 포함하는, 그 내부에 구체화되는 컴퓨터 판독가능한 프로그램 코드를 갖는 컴퓨터 이용가능한 매체를 포함하는 컴퓨터 프로그램 물건.
  11. 제 8 항에 있어서,
    상기 이동 디바이스 운영 소프트웨어 패키지를 분배하는 단계는:
    상기 이동 디바이스 운영 소프트웨어 패키지의 선택을 수신하는 단계;
    상기 운영 소프트웨어 저장소로부터 상기 이동 디바이스 운영 소프트웨어 패키지를 리트리브하는 단계; 및
    이동 디바이스들의 세트를 제조하는데 이용하기 위해 디바이스 팩토리에 상기 이동 디바이스 운영 소프트웨어 패키지를 송신하는 단계를 포함하는, 그 내부에 구체화되는 컴퓨터 판독가능한 프로그램 코드를 갖는 컴퓨터 이용가능한 매체를 포함하는 컴퓨터 프로그램 물건.
  12. 제 11 항에 있어서,
    상기 이동 디바이스 운영 소프트웨어 패키지의 선택을 수신하는 단계는:
    사용자에게 이용가능한 저장된 이동 디바이스 운영 소프트웨어 패키지들의 세트를 결정하는 단계;
    상기 저장된 이동 디바이스 운영 소프트웨어 패키지들의 세트를 상기 사용자에게 제공하는 단계; 및
    상기 사용자가 상기 저장된 이동 디바이스 운영 소프트웨어 패키지들의 속성들을 이용하여 상기 저장된 이동 디바이스 운영 소프트웨어 패키지들의 세트를 탐색하게 허용하는 단계를 포함하는, 그 내부에 구체화되는 컴퓨터 판독가능한 프로그램 코드를 갖는 컴퓨터 이용가능한 매체를 포함하는 컴퓨터 프로그램 물건.
  13. 제 12 항에 있어서,
    상기 제공하는 단계 및 허용하는 단계는 그래픽 사용자 인터페이스를 이용하여 수행되는, 그 내부에 구체화되는 컴퓨터 판독가능한 프로그램 코드를 갖는 컴퓨터 이용가능한 매체를 포함하는 컴퓨터 프로그램 물건.
  14. 제 8 항에 있어서,
    상기 이동 디바이스 운영 소프트웨어 패키지를 디바이스 팩토리에 송신하는 단계를 더 포함하는, 그 내부에 구체화되는 컴퓨터 판독가능한 프로그램 코드를 갖는 컴퓨터 이용가능한 매체를 포함하는 컴퓨터 프로그램 물건.
  15. 이동 디바이스 운영 소프트웨어 패키지로서,
    이동 디바이스 운영 소프트웨어 패키지를 형성하기 위해 멀티미디어 사용자 상호작용 캔버스에 추가하도록 그래픽, 위젯, 오디오/비디오 또는 햅틱 팔레트 중 적어도 하나로부터의 사용자 상호작용 엘리먼트 및 데이터 및 로직 캔버스에 추가하도록 형상, 컴포넌트, 접속들, 컬러 및 라벨 팔레트 중 적어도 하나로부터의 로직 및 데이터 엘리먼트 중 적어도 하나의 선택을 수신하는;
    일반 디바이스 모델 테스팅 모듈을 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지를 테스팅하는;
    상기 이동 디바이스 운영 소프트웨어 패키지를 분배 센터에 제출하는; 및
    상기 이동 디바이스 운영 소프트웨어 패키지를 이동 디바이스에 분배하는 동작들에 의해 이루어지는, 이동 디바이스 운영 소프트웨어 패키지.
  16. 제 15 항에 있어서,
    상기 이동 디바이스 운영 소프트웨어 패키지를 타겟 이동 디바이스를 위해 적합한 타겟 실행가능한 소프트웨어로 컴파일링하는;
    복수의 특정 이동 디바이스 모델들을 이용하는 빌드들을 위해 빌드 엔진에 상기 이동 디바이스 운영 소프트웨어 패키지를 제출하는; 및
    특정 이동 디바이스 모델을 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지를 검증하는 동작들을 더 포함하는, 이동 디바이스 운영 소프트웨어 패키지.
  17. 제 16 항에 있어서,
    일반 빌드 툴킷을 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지의 컴파일화 세트를 수신하는;
    소프트웨어 언어 해석기 및 코드 발생기를 이용하여 상기 컴파일화 세트를 번역하는―여기서 상기 코드 발생기는 디바이스 선택기에 의해 결정되는 타겟 디바이스에 적어도 부분적으로 기초하여 선택됨―;
    상기 번역된 컴파일화 세트를 하나 또는 둘 이상의 사전컴파일된 객체들과 조합하는; 및
    타겟 디바이스-특정 소프트웨어 개발 키트들 및 툴 체인들로부터 선택된 특정 이동 디바이스 모델을 이용하여 타겟 디바이스-특정 실행가능한 운영 소프트웨어를 생성하는 동작들을 더 포함하는, 이동 디바이스 운영 소프트웨어 패키지.
  18. 제 17 항에 있어서,
    상기 수신, 번역, 조합 및 생성은 상기 빌드 엔진에 의해 수행되는, 이동 디바이스 운영 소프트웨어 패키지.
  19. 제 15 항에 있어서,
    상기 이동 디바이스 운영 소프트웨어 패키지를 상기 분배 센터에 제출하는 동작은:
    상기 이동 디바이스 운영 소프트웨어 패키지를 상기 분배 센터에 송신하는; 및
    상기 분배 센터에 의해 유지되는 운영 소프트웨어 저장소에 상기 이동 디바이스 운영 소프트웨어 패키지를 저장하는 동작들을 포함하는, 이동 디바이스 운영 소프트웨어 패키지.
  20. 제 15 항에 있어서,
    상기 이동 디바이스 운영 소프트웨어 패키지를 분배하는 동작은:
    상기 이동 디바이스 운영 소프트웨어 패키지의 선택을 수신하는;
    상기 운영 소프트웨어 저장소로부터 상기 이동 디바이스 운영 소프트웨어 패키지를 리트리브하는; 및
    이동 디바이스들의 세트를 제조하는데 이용하기 위해 디바이스 팩토리에 상기 이동 디바이스 운영 소프트웨어 패키지를 송신하는 동작들을 포함하는, 이동 디바이스 운영 소프트웨어 패키지.
  21. 이동 디바이스 동작 소프트웨어 패키지를 생성, 관리 및 분배하기 위한 시스템으로서,
    이동 디바이스 운영 소프트웨어 패키지;
    일반 이동 디바이스 모델;
    구성 스튜디오; 및
    분배 센터를 포함하는, 이동 디바이스 동작 소프트웨어 패키지를 생성, 관리 및 분배하기 위한 시스템.
  22. 제 21 항에 있어서,
    특정 이동 디바이스 모델;
    빌드 엔진; 및
    검증 엔진을 더 포함하는, 이동 디바이스 동작 소프트웨어 패키지를 생성, 관리 및 분배하기 위한 시스템.
  23. 커스토마이징된 또는 퍼스널화된 이동 디바이스를 생성, 제조 및 분배하기 위한 컴퓨터-구현된 방법으로서,
    커스톰 이동 디바이스 모델을 형성하기 위해 물리적 캔버스에 추가하도록 형상, 컴포넌트, 접속들, 컬러 및 라벨 팔레트 중 적어도 하나로부터의 적어도 하나의 물리적 설계 엘리먼트의 선택을 수신하는 단계;
    데이터 및 논리 캔버스에 추가하도록 형상, 컴포넌트, 접속들, 컬러 및 라벨 팔레트 중 적어도 하나로부터의 논리 및 데이터 엘리먼트,
    이동 디바이스 운영 소프트웨어 패키지를 형성하기 위해 멀티미디어 사용자 상호작용 캔버스에 추가하도록 그래픽, 위젯, 오디오/비디오, 또는 햅틱 팔레트 중 적어도 하나로부터의 사용자 상호작용 엘리먼트, 및
    라이브러리로부터의 기존의 이동 디바이스 운영 소프트웨어 패키지 중 적어도 하나의 선택을 수신하는 단계;
    일반 이동 디바이스 모델 테스팅 모듈, 기계적 시뮬레이터 및 전자기 시뮬레이터를 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지를 테스팅하는 단계;
    상기 커스톰 이동 디바이스 모델 및 이동 디바이스 운영 소프트웨어 패키지를 분배 센터에 제출하는 단계;
    상기 커스톰 이동 디바이스 모델을 디바이스 팩토리에 송신하는 단계;
    상기 커스톰 이동 디바이스 모델에 의해 특정된 설계에 따라 커스톰 이동 디바이스를 자동으로 제조하는 단계;
    상기 커스톰 이동 디바이스에 상기 이동 디바이스 운영 소프트웨어 패키지를 설치하는 단계; 및
    상기 커스톰 이동 디바이스를 전달하는 단계를 포함하는, 커스토마이징된 또는 퍼스널화된 이동 디바이스를 생성, 제조 및 분배하기 위한 컴퓨터-구현된 방법.
  24. 제 23 항에 있어서,
    컴포넌트 맞춤 규칙들, 어셈블리 규칙들 및 제조능력 테스트들의 데이터베이스에 적어도 부분적으로 기초하여 상기 커스톰 이동 디바이스 모델의 제조능력을 검증하는 단계를 더 포함하는, 커스토마이징된 또는 퍼스널화된 이동 디바이스를 생성, 제조 및 분배하기 위한 컴퓨터-구현된 방법.
  25. 제 23 항에 있어서,
    상기 이동 디바이스 운영 소프트웨어 패키지를 상기 커스톰 이동 디바이스를 위해 적합한 실행가능한 운영 소프트웨어로 컴파일링하는 단계; 및
    검증 엔진, 상기 커스톰 이동 디바이스 모델, 및 운영 소프트웨어 호환성 규칙들의 데이터베이스를 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지를 검증하는 단계를 더 포함하는, 커스토마이징된 또는 퍼스널화된 이동 디바이스를 생성, 제조 및 분배하기 위한 컴퓨터-구현된 방법.
  26. 제 23 항에 있어서,
    자동으로 제조하는 단계는:
    상기 커스톰 이동 디바이스 모델에 의해 그리고 컴포넌트 맞춤 규칙들의 데이터베이스에 따라 특정된 바와 같이 부분들을 머시닝(machining)하는 단계; 및
    상기 커스톰 이동 디바이스 모델에 의해 그리고 어셈블리 규칙들의 데이터베이스에 따라 특정된 바와 같이 기계 및 전자 컴포넌트들을 어셈블링하는 단계를 포함하는, 커스토마이징된 또는 퍼스널화된 이동 디바이스를 생성, 제조 및 분배하기 위한 컴퓨터-구현된 방법.
  27. 제 23 항에 있어서,
    자동으로 제조하는 단계는 상기 커스톰 이동 디바이스가 상기 커스톰 이동 디바이스 모델에 따르는지를 자동으로 확인하기 위해 팩토리 테스트 설비 및 팩토리 테스트들의 데이터베이스를 이용하는 단계를 포함하는, 커스토마이징된 또는 퍼스널화된 이동 디바이스를 생성, 제조 및 분배하기 위한 컴퓨터-구현된 방법.
  28. 제 27 항에 있어서,
    상기 커스톰 이동 디바이스를 시각적으로 조사하는 단계;
    상기 커스톰 이동 디바이스의 상기 기계적 양상들을 검증하는 단계; 및
    상기 커스톰 이동 디바이스의 전기적 및 전자기 양상들을 검증하는 단계를 더 포함하는, 커스토마이징된 또는 퍼스널화된 이동 디바이스를 생성, 제조 및 분배하기 위한 컴퓨터-구현된 방법.
  29. 그 내부에 구체화되는 컴퓨터 판독가능한 프로그램 코드를 갖는 컴퓨터 이용가능한 매체를 포함하는 컴퓨터 프로그램 물건으로서,
    상기 컴퓨터 판독가능한 프로그램 코드는 커스토마이징된 또는 퍼스널화된 이동 디바이스를 생성하고, 제조하며 분배하기 위한 방법을 구현하도록 실행되게 적응되며, 상기 방법은:
    커스톰 이동 디바이스 모델을 형성하기 위해 물리적 캔버스에 추가하도록 형상, 컴포넌트, 접속들, 컬러 및 라벨 팔레트 중 적어도 하나로부터의 적어도 하나의 물리적 설계 엘리먼트의 선택을 수신하는 단계;
    데이터 및 로직 캔버스에 추가하도록 형상, 컴포넌트, 접속들, 컬러 및 라벨 팔레트 중 적어도 하나로부터의 로직 및 데이터 엘리먼트,
    이동 디바이스 운영 소프트웨어 패키지를 형성하기 위해 멀티미디어 사용자 상호작용 캔버스에 추가하도록 그래픽, 위젯, 오디오/비디오, 또는 햅틱 팔레트 중 적어도 하나로부터의 사용자 상호작용 엘리먼트, 및
    라이브러리로부터의 기존의 이동 디바이스 운영 소프트웨어 패키지 중 적어도 하나의 선택을 수신하는 단계;
    일반 이동 디바이스 모델 테스팅 모듈, 기계적 시뮬레이터 및 전자기 시뮬레이터를 이용하여 상기 커스톰 이동 디바이스 모델 및 이동 디바이스 운영 소프트웨어 패키지를 테스팅하는 단계;
    상기 커스톰 이동 디바이스 모델 및 이동 디바이스 운영 소프트웨어 패키지를 분배 센터에 제출하는 단계; 및
    상기 커스톰 이동 디바이스 모델을 디바이스 팩토리에 송신하는 단계를 포함하는, 그 내부에 구체화되는 컴퓨터 판독가능한 프로그램 코드를 갖는 컴퓨터 이용가능한 매체를 포함하는 컴퓨터 프로그램 물건.
  30. 제 29 항에 있어서,
    상기 이동 디바이스 운영 소프트웨어 패키지를 상기 커스톰 이동 디바이스를 위해 적합한 실행가능한 운영 소프트웨어로 컴파일링하는 단계; 및
    검증 엔진, 상기 커스톰 이동 디바이스 모델, 및 운영 소프트웨어 호환성 규칙들의 데이터베이스를 이용하여 상기 이동 디바이스 운영 소프트웨어 패키지를 검증하는 단계를 더 포함하는, 그 내부에 구체화되는 컴퓨터 판독가능한 프로그램 코드를 갖는 컴퓨터 이용가능한 매체를 포함하는 컴퓨터 프로그램 물건.
  31. 제 29 항에 있어서,
    컴포넌트 맞춤 규칙들, 어셈블리 규칙들 및 제조능력 테스트들의 데이터베이스를 이용하여 상기 커스톰 이동 디바이스 모델의 제조능력을 검증하는 단계를 더 포함하는, 그 내부에 구체화되는 컴퓨터 판독가능한 프로그램 코드를 갖는 컴퓨터 이용가능한 매체를 포함하는 컴퓨터 프로그램 물건.
  32. 컴퓨터-구현된 분배 센터로부터 수신되는 커스톰 이동 디바이스 모델에 따라 커스톰 이동 디바이스를 생성하도록 구성되는 자동 팩토리로서,
    상기 팩토리는 방법에 따라 동작하며, 상기 방법은:
    상기 커스톰 이동 디바이스 모델에 의해 그리고 컴포넌트 맞춤 규칙들의 데이터베이스에 따라 특정된 바와 같이 부분들을 머시닝하는 단계;
    상기 커스톰 이동 디바이스 모델에 의해 그리고 어셈블리 규칙들의 데이터베이스에 따라 특정된 바와 같이 기계 및 전자 컴포넌트들을 어셈블링하는 단계;
    상기 커스톰 이동 디바이스에 이동 디바이스 운영 소프트웨어 패키지를 설치하는 단계;
    상기 커스톰 이동 디바이스가 상기 커스톰 이동 디바이스 모델에 따르는 것을 자동으로 확인하기 위해 팩토리 테스트들의 데이터베이스 및 팩토리 테스트 설비를 이용하는 단계; 및
    상기 커스톰 이동 디바이스를 분배하는 단계를 포함하는, 컴퓨터-구현된 분배 센터로부터 수신되는 커스톰 이동 디바이스 모델에 따라 커스톰 이동 디바이스를 생성하도록 구성되는 자동 팩토리.
  33. 제 32 항에 있어서,
    상기 동작 방법은:
    상기 커스톰 이동 디바이스를 시각적으로 조사하는 단계;
    상기 커스톰 이동 디바이스의 상기 기계적 양상들을 검증하는 단계; 및
    상기 커스톰 이동 디바이스의 전자 및 전자기 양상들을 검증하는 단계를 더 포함하는, 컴퓨터-구현된 분배 센터로부터 수신되는 커스톰 이동 디바이스 모델에 따라 커스톰 이동 디바이스를 생성하도록 구성되는 자동 팩토리.
  34. 커스토마이징된 이동 디바이스로서,
    커스톰 이동 디바이스 모델을 형성하기 위해 물리적 캔버스에 추가하도록 형상, 컴포넌트, 접속들, 컬러 및 라벨 팔레트 중 적어도 하나로부터의 적어도 하나의 물리적 설계 엘리먼트의 선택을 수신하는;
    데이터 및 로직 캔버스에 추가하도록 형상, 컴포넌트, 접속들, 컬러 및 라벨 팔레트 중 적어도 하나로부터의 논리 및 데이터 엘리먼트,
    이동 디바이스 운영 소프트웨어 패키지를 형성하기 위해 멀티미디어 사용자 상호작용 캔버스에 추가하도록 그래픽, 위젯, 오디오/비디오, 또는 햅틱 팔레트 중 적어도 하나로부터의 사용자 상호작용 엘리먼트, 및
    라이브러리로부터의 기존의 이동 디바이스 운영 소프트웨어 패키지 중 적어도 하나의 선택을 수신하는;
    일반 이동 디바이스 모델 테스팅 모듈, 기계적 시뮬레이터 및 전자기 시뮬레이터를 이용하여 상기 커스톰 이동 디바이스 모델 및 이동 디바이스 운영 소프트웨어 패키지를 테스팅하는;
    상기 커스톰 이동 디바이스 모델 및 이동 디바이스 운영 소프트웨어 패키지를 분배 센터에 제출하는;
    상기 커스톰 이동 디바이스 모델을 디바이스 팩토리에 송신하는;
    상기 커스톰 이동 디바이스 모델에 의해 특정된 설계에 따라 커스톰 이동 디바이스를 자동으로 제조하는;
    상기 커스톰 이동 디바이스에 상기 이동 디바이스 운영 소프트웨어 패키지를 설치하는;
    상기 커스톰 이동 디바이스가 상기 커스톰 이동 디바이스 모델에 따르는 것을 자동으로 확인하기 위해 팩토리 테스트들의 데이터베이스 및 팩토리 테스트 설비를 이용하는; 및
    상기 커스톰 이동 디바이스를 고객에게 전달하는 동작들에 의해 이루어지는, 커스토마이징된 이동 디바이스.
  35. 커스토마이징된 이동 디바이스를 생성하고, 제조하며 분배하기 위한 시스템으로서,
    이동 디바이스 운영 소프트웨어 패키지;
    이동 디바이스 컴포넌트 모델;
    커스톰 이동 디바이스 모델;
    일반 이동 디바이스 모델;
    구성 스튜디오;
    분배 센터; 및
    디바이스 팩토리를 포함하는, 커스토마이징된 이동 디바이스를 생성하고, 제조하며 분배하기 위한 시스템.
  36. 제 35 항에 있어서,
    빌드 엔진; 및
    검증 엔진을 더 포함하는, 커스토마이징된 이동 디바이스를 생성하고, 제조하며 분배하기 위한 시스템.
KR1020137032203A 2011-05-05 2012-04-25 퍼스널화되고 커스토마이징된 이동 디바이스들을 생성하기 위한 시스템 KR20140040144A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/102,032 US8694968B2 (en) 2009-12-30 2011-05-05 System for creating personalized and customized mobile devices
US13/102,032 2011-05-05
PCT/US2012/034909 WO2012151090A1 (en) 2011-05-05 2012-04-25 System for creating personalized and customized mobile devices

Publications (1)

Publication Number Publication Date
KR20140040144A true KR20140040144A (ko) 2014-04-02

Family

ID=47107998

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137032203A KR20140040144A (ko) 2011-05-05 2012-04-25 퍼스널화되고 커스토마이징된 이동 디바이스들을 생성하기 위한 시스템

Country Status (7)

Country Link
US (1) US8694968B2 (ko)
EP (1) EP2705454A4 (ko)
JP (1) JP5933692B2 (ko)
KR (1) KR20140040144A (ko)
CN (1) CN103842961A (ko)
RU (1) RU2013153739A (ko)
WO (1) WO2012151090A1 (ko)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8458661B2 (en) 2006-03-31 2013-06-04 Ebay Inc. Distributed parallel build system
US8538414B1 (en) 2007-07-17 2013-09-17 Google Inc. Mobile interaction with software test cases
US9170870B1 (en) 2013-08-27 2015-10-27 Sprint Communications Company L.P. Development and testing of payload receipt by a portable electronic device
US8612967B1 (en) 2011-05-31 2013-12-17 Sprint Communications Company L.P. Loading branded media outside system partition
US8666383B1 (en) 2011-12-23 2014-03-04 Sprint Communications Company L.P. Automated branding of generic applications
US10455071B2 (en) 2012-05-09 2019-10-22 Sprint Communications Company L.P. Self-identification of brand and branded firmware installation in a generic electronic device
US9026962B2 (en) 2012-05-30 2015-05-05 Gumstix, Inc. Integrated electronic design automation system
US9198027B2 (en) 2012-09-18 2015-11-24 Sprint Communications Company L.P. Generic mobile devices customization framework
US8909291B1 (en) 2013-01-18 2014-12-09 Sprint Communications Company L.P. Dynamic remotely managed SIM profile
US9451446B2 (en) 2013-01-18 2016-09-20 Sprint Communications Company L.P. SIM profile brokering system
US9549009B1 (en) 2013-02-08 2017-01-17 Sprint Communications Company L.P. Electronic fixed brand labeling
US9100769B2 (en) 2013-02-08 2015-08-04 Sprint Communications Company L.P. System and method of storing service brand packages on a mobile device
US9100819B2 (en) 2013-02-08 2015-08-04 Sprint-Communications Company L.P. System and method of provisioning and reprovisioning a mobile device based on self-locating
US9026105B2 (en) 2013-03-14 2015-05-05 Sprint Communications Company L.P. System for activating and customizing a mobile device via near field communication
US9204286B1 (en) 2013-03-15 2015-12-01 Sprint Communications Company L.P. System and method of branding and labeling a mobile device
US9042877B1 (en) 2013-05-21 2015-05-26 Sprint Communications Company L.P. System and method for retrofitting a branding framework into a mobile communication device
US9280483B1 (en) 2013-05-22 2016-03-08 Sprint Communications Company L.P. Rebranding a portable electronic device while maintaining user data
US9098352B2 (en) * 2013-07-17 2015-08-04 Deja Vu Security, Llc Metaphor based language fuzzing of computer code
US9532211B1 (en) 2013-08-15 2016-12-27 Sprint Communications Company L.P. Directing server connection based on location identifier
US9161209B1 (en) 2013-08-21 2015-10-13 Sprint Communications Company L.P. Multi-step mobile device initiation with intermediate partial reset
US9143924B1 (en) 2013-08-27 2015-09-22 Sprint Communications Company L.P. Segmented customization payload delivery
US9125037B2 (en) 2013-08-27 2015-09-01 Sprint Communications Company L.P. System and methods for deferred and remote device branding
US9204239B1 (en) 2013-08-27 2015-12-01 Sprint Communications Company L.P. Segmented customization package within distributed server architecture
US10506398B2 (en) 2013-10-23 2019-12-10 Sprint Communications Company Lp. Implementation of remotely hosted branding content and customizations
US9743271B2 (en) 2013-10-23 2017-08-22 Sprint Communications Company L.P. Delivery of branding content and customizations to a mobile communication device
US9301081B1 (en) 2013-11-06 2016-03-29 Sprint Communications Company L.P. Delivery of oversized branding elements for customization
US9363622B1 (en) 2013-11-08 2016-06-07 Sprint Communications Company L.P. Separation of client identification composition from customization payload to original equipment manufacturer layer
US9161325B1 (en) 2013-11-20 2015-10-13 Sprint Communications Company L.P. Subscriber identity module virtualization
US9392395B1 (en) 2014-01-16 2016-07-12 Sprint Communications Company L.P. Background delivery of device configuration and branding
US9420496B1 (en) 2014-01-24 2016-08-16 Sprint Communications Company L.P. Activation sequence using permission based connection to network
US9603009B1 (en) 2014-01-24 2017-03-21 Sprint Communications Company L.P. System and method of branding a device independent of device activation
US9681251B1 (en) 2014-03-31 2017-06-13 Sprint Communications Company L.P. Customization for preloaded applications
US9426641B1 (en) 2014-06-05 2016-08-23 Sprint Communications Company L.P. Multiple carrier partition dynamic access on a mobile device
US9307400B1 (en) 2014-09-02 2016-04-05 Sprint Communications Company L.P. System and method of efficient mobile device network brand customization
US9992326B1 (en) 2014-10-31 2018-06-05 Sprint Communications Company L.P. Out of the box experience (OOBE) country choice using Wi-Fi layer transmission
US9398462B1 (en) 2015-03-04 2016-07-19 Sprint Communications Company L.P. Network access tiered based on application launcher installation
US9357378B1 (en) 2015-03-04 2016-05-31 Sprint Communications Company L.P. Subscriber identity module (SIM) card initiation of custom application launcher installation on a mobile communication device
US9612805B2 (en) * 2015-05-27 2017-04-04 Sap Se Rapid mobile app generator
US10142450B1 (en) 2015-08-27 2018-11-27 Sprint Communications Company L.P. Custom mobile telecommunication device configuration management
CN105573764B (zh) * 2015-12-24 2019-03-22 北京大学 一种面向智能手表的Android应用重构方法
US10025636B2 (en) 2016-04-15 2018-07-17 Google Llc Modular electronic devices with contextual task management and performance
US10127052B2 (en) 2016-04-15 2018-11-13 Google Llc Connection device for a modular computing system
US9990235B2 (en) 2016-04-15 2018-06-05 Google Llc Determining tasks to be performed by a modular entity
US10129085B2 (en) 2016-04-15 2018-11-13 Google Llc Determining network configurations for a modular computing entity
US10282233B2 (en) 2016-04-15 2019-05-07 Google Llc Modular electronic devices with prediction of future tasks and capabilities
US9977697B2 (en) 2016-04-15 2018-05-22 Google Llc Task management system for a modular electronic device
US9913132B1 (en) 2016-09-14 2018-03-06 Sprint Communications Company L.P. System and method of mobile phone customization based on universal manifest
US10021240B1 (en) 2016-09-16 2018-07-10 Sprint Communications Company L.P. System and method of mobile phone customization based on universal manifest with feature override
CN107870787B (zh) * 2016-09-26 2021-04-27 平安科技(深圳)有限公司 应用程序插件化加载方法及系统
KR101937933B1 (ko) * 2016-11-08 2019-01-14 한국전자통신연구원 오픈 소스 소프트웨어 패키지의 안전성 정량화 장치, 최적화 장치 및 최적화 방법
WO2018089816A2 (en) * 2016-11-11 2018-05-17 Intuitive Surgical Operations, Inc. Teleoperated surgical system with surgeon skill level based instrument control
US10306433B1 (en) 2017-05-01 2019-05-28 Sprint Communications Company L.P. Mobile phone differentiated user set-up
US10509631B2 (en) * 2018-04-16 2019-12-17 EMC IP Holding Company LLC Techniques for generating customized software
US10534588B2 (en) * 2018-06-08 2020-01-14 Sap Se Data processing simulator with simulator module and data elements
CN111324275B (zh) * 2018-12-17 2022-02-22 腾讯科技(深圳)有限公司 显示画面中元素的播报方法及装置
CN109784676B (zh) * 2018-12-25 2023-08-29 杨鑫 数据分析的学习和使用方法、装置及计算机可读存储介质
CN113377343A (zh) * 2020-03-09 2021-09-10 上海博泰悦臻电子设备制造有限公司 软件功能柔性定制方法及系统
US20220283791A1 (en) * 2021-03-08 2022-09-08 Charles Amashta Systems and Methods For Cascading Style Sheets in Native Mobile Applications
US11991525B2 (en) 2021-12-02 2024-05-21 T-Mobile Usa, Inc. Wireless device access and subsidy control

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7331035B2 (en) * 2000-05-05 2008-02-12 @ Hand Corporation System and method for mobile software application development and deployment
JP3288686B1 (ja) * 2001-01-30 2002-06-04 株式会社インクス 設計支援装置及び設計支援プログラム
JP3973388B2 (ja) * 2001-09-13 2007-09-12 シャープ株式会社 カスタマイズ商品デザイン装置、カスタマイズ商品デザイン方法、カスタマイズ商品デザインプログラム、およびカスタマイズ商品デザインプログラムを記憶した記憶媒体
FI20012594A0 (fi) * 2001-12-31 2001-12-31 Nokia Corp Parannettu menetelmä asiakaskohtaisen tuotteen valmistamiseksi ja asiakaskohtainen tuote
US7363033B2 (en) * 2002-02-15 2008-04-22 Telefonaktiebolaget Lm Ericsson (Publ) Method of and system for testing equipment during manufacturing
US20050049883A1 (en) * 2003-08-25 2005-03-03 Eastman Kodak Company Facilitating the design specification and ordering from a manufacturer of a particular display product
US20050120340A1 (en) * 2003-12-01 2005-06-02 Skazinski Joseph G. Apparatus, system, and method for automated generation of embedded systems software
US7496888B2 (en) * 2005-04-07 2009-02-24 International Business Machines Corporation Solution builder wizard
WO2006132931A2 (en) * 2005-06-06 2006-12-14 Javaground Usa, Inc. Efficient software development and porting system and method for wireless devices
US8543095B2 (en) * 2005-07-08 2013-09-24 At&T Mobility Ii Llc Multimedia services include method, system and apparatus operable in a different data processing network, and sync other commonly owned apparatus
JP2007265235A (ja) * 2006-03-29 2007-10-11 Nec Commun Syst Ltd 携帯電話機注文システム、携帯電話機注文方法、携帯電話機受注サーバおよび携帯電話機受注プログラム
US20070264985A1 (en) * 2006-04-17 2007-11-15 Flextronics Software Systems Method and system for rapid creation of applications in communication devices
US20090217259A1 (en) * 2008-02-26 2009-08-27 Microsoft Corporation Building Operating System Images Based on Applications
US20100005410A1 (en) * 2008-07-03 2010-01-07 Pang Xin Mobile device application framework
WO2011033460A1 (en) * 2009-09-17 2011-03-24 Time To Know Establishment Device, system, and method of educational content generation
US8719776B2 (en) * 2009-12-30 2014-05-06 Foneclay, Inc. System for creation and distribution of software applications usable on multiple mobile device platforms

Also Published As

Publication number Publication date
EP2705454A1 (en) 2014-03-12
US8694968B2 (en) 2014-04-08
RU2013153739A (ru) 2015-06-10
WO2012151090A1 (en) 2012-11-08
CN103842961A (zh) 2014-06-04
JP5933692B2 (ja) 2016-06-15
US20110208338A1 (en) 2011-08-25
JP2014514671A (ja) 2014-06-19
EP2705454A4 (en) 2014-12-03

Similar Documents

Publication Publication Date Title
US8694968B2 (en) System for creating personalized and customized mobile devices
TWI757743B (zh) 小程式產生方法以及裝置
CN110928529B (zh) 辅助算子开发的方法和系统
EP3605324A1 (en) Application development method and tool, device, and storage medium thereof
Meier Professional Android 4 application development
US8584114B2 (en) Method of generating and distributing a computer application
CN105814539B (zh) 用于代码虚拟化和远程进程调用生成的方法和装置
CA2539130C (en) System and method for applying development patterns for component based applications
US20060168573A1 (en) Method and apparatus for building an electronic product
CN109716331A (zh) 符合应用程序数据共享和决策服务平台模式的应用程序部署
KR20130086138A (ko) 크로스―플랫폼 어플리케이션 프레임워크
CN105373390A (zh) 面向oem的在线软件定制打包发布的方法和装置
US20140359578A1 (en) Generating visually encoded dynamic codes for remote launching of applications
US20160274885A1 (en) Controlling deployment of an industry-specific solution package
Colombo-Mendoza et al. MobiCloUP!: a PaaS for cloud services-based mobile applications
CN113849156B (zh) OpenHarmony操作系统应用的无代码智能开发系统及其使用方法
CN109086342B (zh) 批量化生产和运维网站模板的方法、介质和终端
US20110047527A1 (en) Systems, Methods, and Apparatuses for Providing Computing Device Deployment Environments for Developing Applications
KR20110107146A (ko) 스마트폰 어플리케이션 제작 시스템 및 그 방법
CN108287720B (zh) 软件编译方法、装置、设备及存储介质
SG189676A1 (en) System for inserting services in a software application
KR102360646B1 (ko) 유저 계정의 입력 정보에 기반한 어플리케이션 자동 제작 시스템
Luyten et al. A generic approach for multi-device user interface rendering with uiml
AFREEN Mobile Applications Development
CN113807877A (zh) 一种信息投放方法、设备及存储介质

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid