Alan Cooper의 통합 파일 모델은 어떻게 되었습니까?


13

오랫동안 Alan Cooper (자신의 "About Face"의 3 가지 버전)는 "통합 파일 모델"을 홍보하여 ​​무엇보다도 그가 발명 한 가장 바보 같은 메시지 상자를 없애기 위해 "통합 파일 모델"을 홍보 해 왔습니다. "변경 사항을 삭제 하시겠습니까?"라는 앱 또는 양식의 닫기 버튼을 누르면 팝업이 나타납니다. 나는 그 아이디어와 그의 주장을 좋아하지만, 대부분의 노련한 프로그래머와 사용자가 가지고있는 그 반대의 반응도 가지고있다.

쿠퍼의 책은 꽤 인기 있고 존경받는 것처럼 보이지만 웹 에서이 특정 문제에 대한 토론은 거의 없습니다. "Programming Industrial Strength Windows"의 저자 인 Petter Hesselberg가 언급했지만 그 점에 대해서는 생각됩니다.

나는 작업중 인 (데스크톱) 프로젝트에서이를 구현할 기회가 있지만 MS Word 및 Excel 작업 방식에 익숙한 고객 및 동료의 저항에 직면 해 있습니다. 나는 그들의 반대 의견을 무시할 입장에 있지만, 내가해야할지 확실하지 않습니다.

내 질문은 :

내가 찾지 못한 좋은 토론이 있습니까? 누구든지 앱에서이 작업을 수행하고 있습니까? 불행히도 Microsoft가 할 때까지 구현하는 것이 실용적이지 않다는 것이 좋은 생각입니까?


2
Google 문서는 "통합 파일 모델"을 사용합니다. 여전히 저장 버튼이 있지만 실제로는 위약입니다. 변경할 때마다 파일이 "저장됩니다". 물론 Google 문서 도구에는 이전 버전으로 되돌릴 수있는 매우 강력한 "역사"모델이 있습니다.
Dean Harding

답변 주셔서 감사합니다. 특히 ElGringoGrande와 Berin Loritsch. 좀 더 완벽 해 보였기 때문에 베린을 골랐어 요. 나는 아직도 방향을 생각하고 있습니다.
PAUL Mansour

답변:


5

Unified File System의 적절성은 실제로 사용중인 응용 프로그램에 따라 다릅니다. 웹 응용 프로그램, Microsoft OneNote 및 iOS 응용 프로그램과 같은 것이 해당 모델에 적합합니다. 응용 프로그램이 데이터베이스 기반 인 경우 해당 모델에도 적합합니다. 그러나 최선의 선택이 아닌 영역을 생각할 수도 있습니다. 특히, 응용 프로그램이 해당 응용 프로그램에서 제공하지 않은 데이터를 사용할 수있는 경우 정보를 찾으려면 파일 시스템 개념이 필요합니다.

메모리와 디스크를 동기화 상태로 유지하는 한, 원하지만 워드 프로세서에는 적합하지 않습니다. 파일을 저장하는 데 시간이 걸린 경우 정보가 손실되지 않도록해야합니다. 그 필요성은 우리가 몇 년 동안 가지고 있었던 자동 저장 기능에 의해 처리되었습니다. 누군가 전원 코드를 넘어 뜨리면 적어도 일부 전원 코드를 다시 가져올 수 있습니다. 그러나 파일 시스템을 어지럽히고 싶지 않은 많은 버림 문서를 만듭니다. 글꼴 샘플 등을 가지고 놀며 하루 동안 만 사용할 기호

대답은 "그것은 달려있다"입니다. Cooper의 UFS는 어떤 경우에는 유용하고 다른 경우에는 그다지 유용하지 않습니다. 사용자의 기술 지식도 결정에 영향을 줄 수 있습니다. 우리 대부분은 현 상태로 성장했으며 때로는 변화의 이점이 변화 비용보다 중요하지 않습니다. 귀하의 앱에서 해당 접근 방식의 적절성을 평가했습니다.


7

Microsoft는 OneNote에서이 작업을 수행합니다.

나는 사용자가 원하는 것을 무시하지 않을 것입니다. 우리는 이것을 구현하는 것에 대해 생각했지만 많은 사용자가 생각없이 일을하고 양식 닫기 버튼 (또는 ctrl-alt-del이없는 경우)을 사용하여 실수가 저장되는 것을 방지합니다.

이전 세션으로 되돌아 갈 수있는 방식으로 구현할 수 있다면 (큰 실행 취소) 허용 될 수 있습니다. 그러나 사람들은 주변 환경을 이용하도록 설계되었습니다. 환경을 바꾸면 그들이 발견 한 이점을 파괴 할 위험이 있습니다.


1
그리고 세션 라인을 넘어서 실행 취소를 제공하면 자체 문제가 발생합니다. 얼마나 많은 사람들이 자신의 생각을 말하고 외교적 말로 마무리하는 편지를 시작합니까? 별도의 내보내기 기능이 필요합니다.
David Thornley

+1, 특히 마지막 단락에서. 저장할 때 이전 컨텐츠를 덮어 쓰지 말고 새 "버전"을 추가하여 이전 버전을 그대로 유지하십시오. 공간을 절약하기 위해 여러 버전에서 데이터를 공유 (불변) 할 수 있습니다.
Joey Adams

1
@David : "이 버전 스트림에 새 버전 저장"명령이 아니라 "게시"명령을 원하는 좋은 예입니다.
Alex Feinman

1
@Alex : 정확하게-대부분의 사람들이 "게시"또는 "내보내기"명령을 찾지 않는 것을 제외하고. 결국 눈에 띄는 차이는 없으며 최종 버전의 파일을 보내는 데만 사용됩니다.
David Thornley

통합 모델을 사용하려면 "이전 버전으로 되돌리기"옵션이 있어야한다는 데 동의합니다. 기본 모델입니다. 사실, 필자의 경우 모든 데이터 (실제 파일은 아니지만 응용 프로그램 관련 항목이지만 모두 동일합니다)는 파괴적인 업데이트를 허용하지 않는 DBMS에 있으므로 모든 버전을 저장했습니다. 이것이 이전 버전의 아이템을 리콜하는 프리비이므로 통합 모델을 고려하는 이유 중 하나입니다.
PAUL Mansour

6

통합 파일 시스템이 이미 승리했습니다!

모든 iOS * 응용 프로그램은이 방식으로 작동합니다. '파일'이없고, 파일 시스템이 없으며, 저장하지 않으며, 삭제하지 않는 한 항상 반환 할 수있는 데이터가 포함 된 응용 프로그램 만 있습니다. 언젠가 MacOS가 iOS로 떨어질 수 있다는 점을 감안할 때, 모델이 확실하게 적용되었다고 말할 수 있습니다.

웹 사이트도 이러한 방식으로 작동합니다. 문서를 거의 '저장'하지 않고 문서 집합을 탐색하는 경우는 거의 없으며 웹 사이트간에 문서를 공유하는 경우는 거의 없습니다. 문서는 사이트 내에 포함되며 이러한 질문과 답변이 StackExchange에 포함되는 방식입니다.

역사적으로, 이것을 Windows와 Mac으로 피하기위한 몇 가지 어색한 시도가 있었으며, 사람들을 생각으로 이끌었습니다. 그러나 파일 브라우저가 없을 것으로 예상되는 새로운 플랫폼으로의 변경으로 인해 기업은 완전히 전환 할 수있었습니다.

(* 나는 안드로이드 나 다른 전화 OS에서는 모른다; 아마도 거기도있다.)


2
그러나 파일 시스템은 프로그램과 응용 프로그램에서 데이터와 인터페이스를 분리하기 위해 존재합니다. 양쪽에 논쟁이 있습니다.
Jé Queue

2
응용 프로그램간에 정보를 공유 할 수 없다는 점을 제외하고 @Alex. 다른 앱은 샌드 박스에 액세스 할 수 없으므로 iOS에서 텍스트 편집기로 게임 저장 파일을 열 수 없습니다.
Stephen Furlani

@Stephen은 사실이며 파일 기반의 정신 모델을 제거하는 데 필수적인 요소입니다. 응용 프로그램간에 데이터를 이동하려면 응용 프로그램 간 직접 공유 ( "Facebook에서 공유!") 또는 중개자 (예 : 클립 보드)가 서로 대화 할 수 있어야합니다. 당신의 "제외"에 혼동됩니다.
Alex Feinman

애플리케이션간에 정보를 공유 할 수 있습니다. iOS는 파일 핸들러를 지원하고 URL 핸들러를 통해 정보를 전달합니다. 전송 프로세스의 중개인이 아닌 사용자가 응용 프로그램간에 데이터를 연결하는 수준에서 수행되었습니다.
Kendall Helmstetter Gelner

1
@Alex, 잠깐만 요, 클립 보드 (임시) 중개를 사용하는 것은 가능하지만 공통 파일 시스템 (영구)을 사용하는 것은 허용되지 않습니까?
Stephen Furlani

1

파일이나 데이터베이스에 데이터를 보관 하시겠습니까?

파일에 물리적으로 액세스 할 것으로 예상되는 경우 파일이 '특별'하다는 것을 가르쳐야합니다. 현재의 정신 모델에서는 복사, 붙여 넣기, 이름 바꾸기 및 삭제가 가능합니다. 나는 그들 중 일부가 이미 데이터를 '버전'하는 방법으로 이름 바꾸기를 사용하고 있다고 확신합니다 (예 : resume2010.doc, SalesDataFromBob2.xls).

데이터베이스 인 경우 특정 시점에서 파일을 내보내거나 가져 오려고합니다.


0

구현하기 어려운 사용자에게 눈에 띄게 "항상 저장"옵션이 표시됩니까?


1
아니요, 전혀 구현하기가 어렵지 않습니다. 그러나 실제로 옵션을 만들고 두 가지 모델을 지원하는 것이 좋은 생각입니까? 나는 그렇게 생각하지 않습니다. 나는 하나를 선택하고 고수하는 것이 낫다고 생각합니다.
PAUL Mansour
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.