06. 화면설계 B - TOTOLII/study GitHub Wiki

  • UI 설계도구

    1. 와이어프레임
      기획 초기단계에서 제작 개략적인걸 나타낼 때 사용
      뼈대를 제작할 때 사용한다고 보면 됨
      툴로는 손그림, 파워포인트, 키노트, 일러스트, 포토샵 등이 있음.

    2. 목업
      와이어 프레임보다는 정적인 형태의 모형
      사용방법 설명
      실제 구현은 하지 않지만
      실제 구현 화면과 매우 비슷함

    3. 스토리보드
      만들어 둔 와이어프레임에 설명,
      페이지 간의 이동흐름을 적어둔다
      화면을 좌측과 우측으로 나눠 좌측에는 화면을, 우측에는 작성자나
      제목등을 세부적으로 작성한다.
      작성하는데 파워포인트나 키노트 등을 사용한다.

    4. 프로토타입
      동적인 형태로 실제로 구현하지만 하나의 모형물 같이 만들어 진다.
      완성품이 나오기전에 이해를 돕기 위해서 작성하는 것이다.
      작성하는데 HTML/CSS, Flinto 같은 툴을 사용한다.

    5. 유즈케이스
      사용자 측면에서 요구사항을 나타내는 것.
      사용자 요구사항을 빠르게 파악하고 결과를 문서화 할 수가 있고
      자연어로 되어 있는 요구사항이 구조적으로 표현하는 것.

  • UI 요구사항 확인
    목표 정의 > 활동 사항 정의 > UI 요구사항 작성

    • 목표 정의 단계
      사용하는 사용자와 인터뷰를 한 뒤,
      요구사항을 명확히 이해하는 과정
      인터뷰의 경우 개별적으로 진행하고 가급적 많은 사람과 인터뷰를 하는 것이 좋다.

    • 활동 사항 정의
      앞으로 해야할 활동사항을 정의 하는것.
      사용자와 회사의 이해 관계를 일치 시키는 것.

    • UI 요구사항 작성
      실 사용자 중심으로 작성해야 함.
      다양한 의견을 수렴해서 작성 해야 한다.
      전체적인 구조를 파악하고 검토해서 작성해야 한다.
      요구사항 요소 확인 > 정황 시나리오 작성 > 요구사항 작성의 과정으로 이루어짐

  • 요구사항 요소 확인
    데이터 요구 (초기 확인)
    기능 요구 (무엇을 실행 해야 하는가) 제품/서비스 품질 (얼마나 빠르게 처리 할 수 있는가)
    제약 사항 (제작에 필요한 비용, 규제, 기한 등)

  • 정황 시나리오 작성 (초기에 사용되는 시나리오)

  • 요구사항 작성

  • 품질 요구사항
    ISO/IEC 9126 : 기능성, 신뢰성, 효율성, 유지 보수성, 이식성
    ISO/IEC 25010의 품질특성 : 기능성, 사용성, 이식성, 유지 보수성, 기능 적합성, 효율성, 호환성, 보안성

  • 기능성
    적절성/정합성 : 목적달성
    정밀성/정확성 : 정확산출
    상호 운용성 : 다른 시스템
    보안성 : 접근 권한
    호환성 : 기능

  • 신뢰성
    성숙성 : 어느 정도 오류는 자체적으로 해결 하는 것.
    고장 허용성 : 성능 유지
    회복성 : 고장이 생겼을 때 빨리 복구가 가능한가

  • 사용성
    이해성 : 소프트웨어에 관해 사용 방법을 이해 했느가
    학습성 : 소프트웨어를 학습할 수 있는가
    운용성 : 소프트웨어를 운용하고 제어할 수 있는가
    친밀성 : 다시 사용하고 싶어하는 능력이 되는가

  • 효율성
    시간 효율성 : 반응 시간, 처리 시간을 제공할 수 있는 능력
    자원 효율성 : 특정한 기능을 수행할 떄 적절한 자원의 양이나 종류가 필요한가

  • 유지 보수성
    분석성 : 고장에 대한 원인 식별이 가능하게 하는 것.
    변경성 : 환경의 변화로 수정을 쉽게 구현할 수 있는 것.
    안정성 : 얘기치 못한 일이 발생했을 떄, 그것을 최소화 할 수 있는 능력
    시험성 : 변경이 검증 될 수 있는 능력

  • 이식성
    다른 환경에서 얼마나 쉽게 적응할 수 있는가
    적용성 : 원래의 환경에서 다른 환경으로 변경될 수 있는 능력
    설치성 : 환경에 소프트웨어를 설치 할 수 있는 능력
    대체성 : 동일한 목적을 위해 다른 소프트웨어를 대체해서 사용할 수 있는 능력
    공존성 : 자원을 공유하는 환경에서 다른 소프트웨어와 공존 할 수 있는 능력