On-ly 2.0이 릴리즈 되었다. 프로젝에 참여하면서 경험하고 느낀 점이 많기에 그동안 느꼈던 것들을 회사 블로그에 써 보는 것이 어떻겠냐는 본부장님의 제안이 있었고, On-ly 2.0 프로젝트 진행 과정 정리도 할겸 글을 쓰게 되었다.
따듯한 봄날 외부업체에 파견을 나갔다 친정 같은 본사로 복귀한 나는 새로운 프로젝트에 참여 하게 되었다.
그것은 On-ly 2.0 프로젝트!
사용자 수를 늘리고,사용자들이 건강한 게임라이프를 즐길 수 있도록 의미있는 컨텐츠를 집어 넣고자 On-ly 2.0 프로젝트가 시작되었고, 난 이 프로젝트에 참여 한다는 것에 완전 신나 있었다.
본격적인 기획에 앞서 회사 사람들과 함께 모여 아이디어 회의를 했다.
새로운 On-ly 2.0에 추가했으면 하는 기능들을 생각해 마음껏 의견을 내주셨는데 그 열기가 무척 뜨거웠다.
(On-ly 2.0 아이디어 중 일부)
각자 의견을 낸 것을 문서로 정리해 보는 시간을 가졌고, 우리가 추구 했던 목표에 부합하는 아이디어를 모두 반영해 본격적인 기획을 시작 하였다.학교 다닐때 팀프로젝트를 할 때 주로 개발만 하고 기획문서는 작성해 보지 않았기 때문에 기획문서를 처음 만들게 된 나는 어디서 부터 시작해야 할 지 막막했다.
다행이도 박본부장님께서 1차적으로 information architecture를 작성해주셔서 좀 더 쉽게 기획안을 작성해 나갈수 있었다.
(On-ly 2.0 information architecture중 일부)
하지만 On-ly 기획안 작업을 하면서 나의 발목을 붙잡았던 것은 포토샵 작업이었다. Mockup작업을 하면서 포토샵으로 이미지 작업을 해야 했기 때문이다.포토샵 잘 하는 사람들을 보면 우와 하면서 엄지척 했었는데 직접 포토샵으로 작업 할일이 생기니 삽질이 따로 없었다.
디자이너한테는 비교적 쉬운 일이겠지만 개발자인 나는 내가 생각하고 있는 것을 포토샵을 이용해 이미지로 나타낸 다는 것은 무척어려운 일이었다. 다크써클이 점점 내려오기 시작했다.
(작업한 이미지를 부장님께 보여드릴때 )
하지만 초긍정적인 마인드를 발휘하였고 드디어 기획안을 완성하게 되었다.
완성된 기획안은 다음과 같다. 중간중간에 빠진 내용은 아직 공개하기에 민감한 내용들이라 항목에서 제외시켰다.
기획안 작업은 시행착오를 많이 겪었던 과정이었고 부족했던 점도 있지만 우리가 추구하는 컨텐츠를 녹여내기 위해 회사 사람들과 함께 치열하게 고민했던 작업이었다. 또한 기획안을 최종 검토 하면서 과감히 기획을 쳐내는 작업이 있었는데 그 때는 정말 아쉬웠다. 정말 열심히 작업했기 때문이다.
기획안이 완성 된 후 개발 단계로 넘어가게 되었고, 이제 본격적인 개발을 시작하게 되었다.
직접 기획했기해 순조로울 것 만 같은 개발단계는 결코 순조롭지 못했다. 그 이야기는 다음 포스팅(주니어 개발자의 On-ly 2.0 프로젝트 경험기-개발편)에서 써 내려갈 것이다. 기대해도 좋다.
다사다난했던 주니어 개발자의 On-ly 2.0 프로젝트 경험기-기획편은 이것으로 마무리 한다.
최근 누구나 한번쯤은 드론(Drone), 웨어러블 디바이스 (Wearable Device)와 더불어 사물 인터넷 (IoT : Internet of Things) 이라는 것을 들어보았을 것이다.
드론이나 삼성의 갤럭시 기어, Fitbit이 바로 사물인터넷을 기반으로한 제품들이다.
그렇다면 사물인터넷 (IoT : Internet of Things) 이란 무엇일까?
Internet of THINGS (사물 인터넷)
The Internet of Things (IoT) is the network of physical objects or "things" embedded with electronics, software, sensors and connectivity to enable it to achieve greater value and service by exchanging data with the manufacturer, operator and/or other connected devices. Each thing is uniquely identifiable through its embedded computing system but is able to interoperate within the existing Internet infrastructure.
사물 인터넷(Internet of Things, 약어로 IoT)은 물건들 또는 전자제품, 소프트웨어, 센서 그리고 연결된 장치의 양쪽 혹은 어느 한 쪽의 가공, 연산된데이터를 교환 함으로써 더 큰 가치와 서비스를 달성하기 위한 연결을 가능케하는 사물들의 네트워크이다. 각 사물은 각각의 임베디드 컴퓨팅 시스템을 통해서 고유하게 식별하지만 기존에 존재하던 상호연동이 가능한 인터넷 인프라에서도 가능하다.
[출처 : Wikipedia]
Wikipedia에 따르면'사물들의 네트워크'라고 정의 하고 있다. 네트워크로 연결되어 상용화된 첫 기기는 바로 컴퓨터 였다. 이후 Smart Phone 을 거쳐 현재 'Things' 즉, 특정 되지 않은 각종 사물에 도달한 것이다.
이런 IoT 활용 기기가 어떤 것들이 있는지 우선 드론(Drone)인 Lily와 웨어러블 디바이스(Wearable Device)인 Fitbit의 제품에 대한 아래 영상을 통해 살펴보자.
두 영상을 보고 필자는 신기함, 흥미로움과 같은 감정과 함께 2002년 개봉 했던 마이너리티 리포트 라는 영화의 한 장면이 뇌리를 스쳤다. 영화를 보면 주인공인 톰 크루즈가 광고판 앞을 지나가자 광고판이 톰 크루즈를 알아보고 맞춤형 광고를 보여주는 장면이었다. 이는 IoT 기술을 표현 할만한 좋은 예가 되는 장면이라고 생각한다. 우리는 지금 영화의 내용이 그저 상상이 아닌 현실이 되는 시대에 살고 있는 것이다. 그렇다면 IoT(Internet of Things : 사물인터넷)는 꼭 필요한 것일까?
누군가는 "저런거 없어도 살수 있다."혹은 "저런게 꼭 필요한가?" 라고 말할 것이다. 시장조사업체인 IHS 테크놀러지는 인터넷에 연결된 사물은 2014년 기준 200억개에 달하고 있고 10년뒤인 2024년에는 약 800억개에 달할 것으로 전망하고 있다. 또한 Apple사는 2015년 6월에 있을 발표를 겨냥해 'Home-kit을 주목해주세요.' 라고 했다. IoT에 대해 '없어도 살 수 있다?' 맞는 말일 수 있다. 하지만 있으면 삶의 질은 향상될 것이다. Internet of Computer에서 Internet of IPhone을 넘어 이제는 Internet of Things의 시대가 올것이다.
그렇다면 이제 IoT 기술에 대해 조금더 자세히 알아보자.
현재 IoT 기술을 이용한 제품은 어떤 것이 있을까?
http://iotlist.co/ 링크된 곳은 IoTList라는 사이트로 아래와 같이 IoT 기술을 이용한 다양한 제품을 소개 및 판매하고 있다.
IoT와 관련된 오픈소스는 이밖에도 많이 있다. 이러한 오픈소스들은 IoT관련 개발을 손쉽게 접하도록 도와준다. IoT 개발에 관심이 있다면 Arduino 혹은 Raspberry Pi의 홈페이지에서 제공하고 있는 Project Example을 활용 하면 좋을 것이다.
마무리
지금 까지 IoT에 대해 전반적으로 살펴 보았다.
오래전부터 인간은 도구를 사용해 왔다. 도구를 사용하지 않았어도 인간은 살아갈 수는 있었을 것이다. 하지만 도구의 사용은 인간의 삶의 질을 향상 시켜 주었고, 생활의 편리함을 제공해 주었다. 더불어 더욱 편리해 지기위한 필요에 의해 도구는 발전을 거듭해 왔다.
IoT 기술도 마찬가지이다. IoT 기술이 없어도 살아갈 수 있지만 이 기술을 활용 하면 인간은 지금보다 더 좋은 환경에서 생활 할 수 있을 것이다. 또한 IoT 기술이 생겨나고 발전 할 수 있었던 것은 사람들이 필요로 했기 때문이다. IoT 시대는 이미 시작 되었다. IoT는 무궁무진한 발전 가능성을 가지고 있고 관련 자료들이 지금도 쏟아져 나오고있다. 위에서 소개한 IoT 관련 Open Source 및 기타 자료들은 IoT의 극히 일부에 불과하다.
하지만 이번 포스팅을 통해 IoT 가 무엇인지 알고 싶어 하는 사람들에게 조금이라도 도움이 되었길 바란다.
IoT 에 입문하기 위한 혹은 IoT가 어떤 것인지 알고 싶은 사람들을 위한 이번 'IoT(Internet of Things : 사물인터넷) ?' 에 대한 포스팅을 마치겠다.
이번 포스팅은 IoT를 위한 오픈 소스 개발 툴중에 하나인 Kinoma를 소개하고자 한다.
Kinoma는 Marvell Technology Group소유의 소프트웨어 플랫폼으로써 각기 다른 세개의 오픈소스 프로젝트를 포함하고 있다.
1. Kinoma Create은 프로토타입의 전자 기기를 위한 DIY키트이다.
2. Kinoma Studio는 Kinoma Create과 Kinoma Platform Runtime에서 사용할 수 있는 개발 툴이다.
3. Kinoma Connect는 스마트폰 또는 타블렛과 IoT 기기를 연결해주는 무료 iOS, Android앱이다.
이중에서 우리는 두번째에 있는 Kinoma Studio를 살펴보도록 하겠다.
Kinoma Studio
Kinoma Studio는 어플리케이션 프로그래밍 툴이다.
자바스크립트와 XML로 어플리케이션 작성을 할 수 있다. XML API 옵션은 유저인터페이스와 데이터 바인딩을 간단하게 해 준다고 한다. Node.js가 자바스크립트를 사용하지만 "웹" 부분을 서버로 사용하기 위한 프레임워크로 바꿔서 사용하듯이, Kinoma Platform Runtime(KPR)은 Kinoma Create, iOS, Android에서 사용될 고성능 앱을 구축하기 위하여 프레임워크를 최적화 한다.
Eclipse open source IDE에 Built-on된 Kinoma Studio는 개발자에게 친숙한 환경을 제공한다.
Built-in 시뮬레이터가 있어서 키트가 없어도 즉시 코딩 가능하다. 또한, 수많은 예제들을 제공하여, 개발하고자 하는것과 관련된 예제들은 바로 테스트 가능하다.
Kinoma Stydio는 Kinoma Create App이나 iOS App, Android App으로 쉽게 Export 할 수 있다.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<method id="onTouchBegan" params="container, id, x, y, ticks"><![CDATA[
container.skin = ButtonSkinPressed;
/* Turn led on/off and switch the button's label */
if ( ledState ) {
container.first.string = "Hello!";
} else {
container.first.string = "World!";
}
ledState = !ledState;
]]></method>
<method id="onTouchEnded" params="container, id, x, y, ticks"><![CDATA[
container.skin = ButtonSkin;
]]></method>
</behavior>
</container>
</container>
<script><![CDATA[
/* Global Variables */
var ledState = false;
/* Start application */
var main = new MainContainer();
application.add( main );
/* Same as
application.add(new MainContainer());
*/
]]></script>
</program>
2. 실행하기
프로젝트의 Run Configuration에서 원하는 프로젝트 경로와 시뮬레이터를 선택 후 실행해준다. 시뮬레이터는 application.xml에서도 지정 가능하다.
<이미지 1. applicaiton.xml>
<이미지 2. 세가지의 시뮬레이터를 선택할 수 있다.>
<이미지3. 실행 설정>
3. 각 시뮬레이터에서 실행 된 모습.
<이미지 4. Desktop Application 시뮬레이터>
<이미지 5. Kinoma Create 시뮬레이터>
<이미지 6. Nexus One 시뮬레이터>
마무리
IoT에대한 관심이 높아지는 요즘, Kinoma Studio는 가상 시뮬레이터를 제공해 주기때문에 실제 키트가 없더라도 IoT관련 개발을 손쉽게 접할 수 있을것 같다. 더구나 개발 언어가 자바스크립트와 XML이기 때문에 웹을 하던 사람들도 익숙하게 개발 할 수 있을것 같다. 또, eclipse IDE환경을 제공하여 친숙한 환경에서 개발 할 수 있어 진입장벽이 낮은것 같다.
IoT 입문자 또는 관련 앱을 개발하고 싶은사람에게 적극 추천해주고 싶은 Kinoma Studio에 대해 이번포스팅을 마치겠다.
pinpoint는 어플리케이션 성능 측정 (Application Performance Management: APM) 도구로서 java로 쓰여진 대규모 분산된 어플리케이션 에서 수행괴는 트랜잭션을 추적하여 프로파일링 데이터를 제공한다. 현재 인프라에서 어플리케이션까지 다양한 네이버 내부 시스템의 장애 분석 및 성능 개선에 사용되고 있다고 한다.
pinpoint는 Google의 Dapper paper를 모델로 하였으며, 시스템의 전체 구조를 분석하고 그 안의 분산 어플리케이션 구성 요소를 통해 트랜잭션을 추적함으로서 어떻게 상호간에 연결되는지를 보여주는 솔루션을 제공한다.
단 한줄의 코드를 변경하지 않고 agent를 설치할수 있으며, 성능에 미치는 영향을 최소화 (자원 사용량이 약 3% 증가) 한다고 한다.
Overview
요즘 서비스들은자체 통신 뿐만 아니라 외부 서비스에 대해API를 호출하는 서로 많이 다른 구성요소들이 존재한다. pinpoint는 이런 구성요소들 사이의 트랜잭션이 흘러 문제가 생기는 영역과 병목 현상을 볼 수 있는 명확한 뷰를 제공하고 있다.
제공하는 뷰들에 대해 알아보자.
ServerMap
각 구성 요소가 어떻게 상호 연결 되어있는지 시각화 함으로서 분산된 시스템의 Topology를 이해하며, 각 노드를 클릭하여 현재 상태, 트랜잭션 수 등과 같은 구성요소에 대한 세부 사항을 확인할 수 있다.
Request/Response Scatter Chart
Request 수, Response 패턴을 시각화 해주며, 트랜잭션은 차트를 드래그 함으로서 상세 정보를 확인할 수 있다.
CallStack
분산 환경에서 모든 트랜잭션 코드 수준의 가시성을 얻을 수 있으며, 하나의 뷰에서 병목지점, 실패 위치를 볼 수 있다.
Inspector
CPU 사용량, Memory/GC, JVM arguments와 같은 어플리케이션 상세 정보를 제공한다.
Architecture
pinpoint의 전반적인 구조는 아래 그림 하나로 한번에 이해할수 있다.
우측 상단의 Host JVM이 사용자가 구현한 어플리케이션이 돌가가는 웹 어플리케이션 서버(WAS)이다. 바로 여기에 pinpoint의 agent가 올라가며, collector와 web UI는 HBase를 보고 있다.
Supported Modules
pinpoint가 지원하는 모듈들은 다음과 같다.
JDK 6+
Tomcat 6/7
Spring
Apache HTTP Client 3.x/4.x, JDK HttpConnector
MySQL, Oracle, MSSQL, CUBRID, DBCP
iBATIS, MyBatis
Arcus, Memcached, Redis
pinpooint에 다한 자세한 사항은 여기를 참조하길 바라며, 설치는 여기를 참조하면 된다.
다운받으면 안에 quickstart도 있어 간편하게 사용해볼수 있다. quickstart 사용에 대한 내용은 여기를 참조하길 바란다.
친구가 본 "micro Software" 라는 정기적으로 받아 볼수 있는 잡지를 쭉 살펴 보던중 요즘 하던일과 살짝관련있는 제목이 눈에 띄어 소개해 볼까 한다. 발행 일이 2014.06로 좀 지났지만 꽤 흥미있어 보여 읽어보았다.
제목은 위에도 써놨듯이 "데이터 분석이 게임 성패를 가른다" 로 5Rocks대표 겸 CTO 이창수씨가 쓴 글이다.
먼저 5Rocks로 말할것 같으면, 발음 그대로 오락으로 게임을 위한 데이터 분석 및 운영 플랫폼이며 기업과 기업간의 거래(B2B)를 하는 업체이다.
홈페이지는 그림을 클릭하면 바로 이동 가능하다.
스타트업--
5Rocks는 스타트업 업체들에서 좀처럼 찾기 힘든 B2B 서비스 업체 이다. 그것도 스마트폰 게임 관련 데이터 분석 서비스 겸 시각화 업체.
5Rocks의 개발팀은 코어 개발자 4명과 인턴등의 개발자들을 포함 8명으로 구성되어 있다. 특히 코어 개발자들을 중심으로 멀티 플레이어를 수행하고 있는 것이 인상적이다.
개발 업무를 들여다 보니 유니티 SDK를 하는 사람이 동시에 안드로이드 SKD를 개발하며 전체 서버를 보고있다. 또한 IOS SDK를 하는 사람은 하둡 MR 작업도 하고 있다.
이들이 다루는 데이터 양도 어마어마하다. 대용량 데이터 처리 플랫폼인 하둡을 사용하는데, 하둡 노드를 기준으로 평소에 20노드를 사용하다가 과부하가 걸릴 경우 50노드까지도 확대해 사용 한다고한다.
유니콘 개발자--
여느 스타트업이 그렇듯 5Rocks역시 개발자 구인난에 시달리고 있다. 인턴도 찾기 힘들다는 것이 엡계의 전언이다. 심지어 스타트업이 필요로 하는 개발자는 찾는 것이 불가능하다는 뜻에서 전설의 동물의 이름을 붙여 '유니콘 개발자'라고 부른다.
5Rocks는 유리판에 코드를 쓰게 하는 방식으로 개발자를 뽑는다. 겉으로 볼땐 쉬워보이지만, 제대로 못쓰는 지원자들이 태반이었다고..
"면접을 볼떄 코드를 짜게 하면서 가이드를 줍니다.
자바의 경우 10by7 매트릭스를 다이어고날(대각선)로 접근할 경우 그 사이에 들어가는 코드를 제일 편한 언어로 짜보라고 합니다. 그런식으로 문제를 주고 가이드를 제시하는데, 얼마나 잘 따라오는지를 중심적으로 봅니다.
개발하는 분들 중에 특정 사이트에서 검색해 그대로 붙여쓰는 작업만을 해오시던 분들은 바로 실력이 들통납니다."
유료화 --
'유료화 고수'라는 점도 특이 했다. 아무리 유료 서비스라 해도 베타 서비스를 할때는 무료로 진행하는 것이 보통이다. 하지만 5Rocks는 클로즈 베타 때도 약간의 할인을 했을 뿐, 유료화를 포기하지 않았다.
이 대표는
"클로즈 베타 때 무료로 서비스를 배포할 경우 중요한 테스트를 할 수 없기 때문에 유료화를 강행했습니다.
무료와 유료 사이의 간극이 상당히 큽니다. 클로즈 베타 때야말로 돈 받고 쓰게 할 것인지,
무료로 뿌리고 비즈니스 모델을 찾아야 하는지 결정해야 하는 중요한 시점이기 때문에 유료화를 포기할 수 없었습니다."
라고 강조했다.
게임 데이터 분석 --
이창수 대표는 왜 게임에 분석을 도입했을까. 여기에서 비즈니스적인 성과를 거둘 수 있단 말인가.
요즘엔 하루에도 수많은 게임들이 풀시되고, 사라진다. 이용자 데이터 분석이 게임의 흥망성쇠에 영향을 미칠 수 있다면 어떨까?
그의 설명에 따르면, 알푸(ARPU: 가입자당 평균 수익)가 최고점과 최저점을 기록하는 것만으로는 매출의 증감 여부를 알 수 없다. 매출이 최고점에 올라도 알푸가 오르지만, 이용자 숫자가 최저치를 쳐도 알푸는 올라가기 때문이다.
하지만 이용자의 게임 캐릭터 레벨별 알푸를 나눠서 보면 성공과 실패 여부를 판단 할 수 있다.
가령, 레벨1의 알푸가 0.3달러, 레벨3은 0.2달러, 레벨10은 0.1달러를 기록하면 이 게임은 곧 망한다. 하지만 레벨1이 0.3달러, 레벨3은 0.4달러, 레벨10은 0.5달러라면 이 게임은 성공한다.
과거에는 이용자의 데이터를 분석하는 게 큰 의미가 없었다. 돈을 주고 게임 CD를 사는 것이 전부 였기 때문이다. 온라인 게임의 경우도 마찬가지였다. 가입자의 수가 중요했다. 데이터 처리의 결루 서버로 몰려오는 트래픽을 잘 견디는 것이 지상 과제일 뿐이였다.
하지만! 스마트폰의 등장이후 그 기반의 게임 시장은 데이터를 바라보는 관점을 180도 바뀌에 했다.분석을 통해 게임 이용자들이 어떤 레벨에 도달할 때 지갑을 여는 지 파악할 수 있게 됬다. 그리고 분석을 통해 게임사가 가입자를 더 유치하거나 구매율을 높이는 사례도 속속 등장하기 시작했다.
데이터 분석의 가치가 인정받는 생태계가 만들어진 것이다.
자체 로그 분석 서비스 개발 --
로그 분석 서비스 하면 따오르는 것은 대표적으로 구글 애널리틱스와 플러리 이다. 온라인 서비스를 하는 업체라면 누구든 빼놓지 않고 사용하는 서비스이기도 하다. 하지만 이 대표에게는 불편했다.
"앱으로 들어오는 데이터를 분석 할 경우 구글 애널리틱스와 플러리는 많이 불편합니다. 예전에 앱을 운영했을 때에도 의도했던대로 전혀 쓸수 없었습니다.
그러던 어느날 친한 지인이 데이터 분석 시스템을 게임에도 활용하면 좋을 것 같다고 조언을 했고, 이를 받아 들여 2013년 02월 부터 개발에 들어갔습니다."
그해 5월부터 국내 한두 회사가 5Rocks에 관심을 보이더니, 6월에는 5개 회사를 추가로 계약했다. 일본의 경우 9월부터 고객사가 하나 둘씩 생겼다. 그리고 2014년 04월 고객사는 400여곳에 이른다.
몇개월전, 우분투를 사용하고 있었을 당시, 플로우 차트를 그려야할 일이 있었다. 리눅스계다 보니, 사용하기 편하면서 결과물이 예쁘게 나올 수 있는 프로그램을 찾기 어려웠다. 이리저리 찾아보던중, 나의사랑 크롬 웹스토어에서 검색해보았더니 Gliffy Diagrams라는 앱이 있길래 설치를 해 보았다. 오늘은 Gliffy Diagrams를 리뷰해 보겠다.
Gliffy Diagrams 사용해보니 무료임에도 불구하고 고퀄리티의 플로우차트를 뽑을 수 있었다. 제공해주는 색상 스키마도 깔끔하고 자주 사용하는 색상 위주로 제공해 주기때문에 색상 선택으로 고민하는 시간을 줄여주는 느낌이다.
뿐만아니라 다양한 다이어그램을 그릴 수 있다. UML이나 Entity-Relationship등 간단하고 예쁘게 그릴 수 있다. 공식홈페이지(http://www.gliffy.com)에 따르면, 다음과 같은 목적으로 사용 가능하다고 나와있다.
Use Gliffy As
Flow chart software
Network diagram software
Floor plan software
Org chart software
SWOT analysis
Wireframe software
Site map software
UML software
Business process modeling software
Venn diagram software
또한, Jira와 Confluence에서 사용할 수 있는 Plug-in도 제공을 하고 있다고 한다.
시작을 하게 되면 다음과 같은 화면이 뜬다.
<그림.1 시작>
가이드 라인이 나와서 쉽게 정렬이 가능하다.
<그림2. 플로우 차트 그리기>
<그림3. 플로우 차트>
<그림 4. 색상스키마 선택>
그 외의 다이어그램을 그릴때도 유용하다.
<그림 5. 다이어그램>
구글 드라이브와 연동도 가능하다.
<그림 6. 구글 드라이브와 연동>
프로그램이 죽거나 실수로 끈 경우 백업파일을 불러와서 계속 편집이 가능하게 해 준다.
<그림 7. 백업파일로부터 시작>
정리해보면 Gliffy는 다음과 같은 기능을 제공한다.
1. 가이드라인 보여주기, 그리드 보여주기, 그리드에 자동붙이기 기능등 기본적이면서 가장 필요한 기능을제공한다.
7. 만약 실수로 저장하지 않고 프로그램을 종료한 경우에, 다음번 실행시 자동백업된 파일을 불러와서 계속 편집할것인지 물어본다.
크롬 브라우저에서 지원하는 문서편집 툴들이 그러하듯, 내 컴퓨터에서 굳이 프로그램을 설치할 필요가 없다는 점이 장점이라고 본다. 또한 간단하면서 직관적인 UI를 제공하여 사용자로 하여금 친숙하게 접근할 수 있는 프로그램이다. 그동안 크롬 브라우저 웹스토어에서 사용한 프로그램들을 돌아보면,주로 간단하면서 사용하기 직관적인 프로그램들이 오랫동안 살아남는것 같다.
phpMyAdmin은 MySQL을 웹 상에서 관리할 목적으로 PHP로 작성한 오픈 소스 도구이다. 데이터베이스, 테이블, 필드, 열의 작성, 수정, 삭제, 또 SQL 상태 실행, 사용자 및 사용 권한 관리 등의 다양한 작업을 수행할 수 있다. PHP로 작성되어있기 때문에 코어파일들을 적절하게 튜닝하여 사용 가능하다.
phpMyAdmin은 다음과 같은 기능을 제공한다.
직관적인 웹 인터페이스
MySQL 데이터베이스 관리
테이블 관리
일반사용자와 특정 권한 이용자 관기
CSV와 SQL로부터 데이터 가져오기
데이터를 다양한 형식으로 내보내기: CSV, SQL, XML, PDF (TCPDF 라이브러리를 통해), ISO/IEC 26300 - 오픈도큐먼트 텍스트 및 스프레드시트, 워드, 엑셀, LaTeX 등
다중 서버 관리
데이터베이스 양식의 PDF 그래픽 작성
쿼리별 조회(QBE)를 이용한 복잡한 쿼리 작성
데이터베이스 및 하부 집합 전역 검색
미리 정의된 함수 집합을 사용하여 저장된 데이터를 원하는 형식으로 변형 (BLOB 데이터를 다운로드 링크나 이미지로 표시 등)
쿼리 모니터 (프로세스)
현재 공식버전은 4.3.11.1이며 Alpha버전은 4.4.0까지 나와있다. 설치에 사용된 버전은 4.2.13.2버전이다.