정처기/소프트웨어 설계

3. 화면설계 - 8. SW 아키텍처

hyehh 2023. 4. 5. 23:30
728x90
반응형
SMALL
728x90
반응형
SMALL

08. SW 아키텍처

1. SW 아키텍처

2. ISO/IEC 9126 모델

3. 요구사항 요소

4. 정황 시나리오 작성


1. 소프트웨어 아키텍처 (Software Architecture)

개발 대상 시스템의 전반적인 구조를 체계적으로 설계하는 것이다.

- 다수의 이해관계자가 참여하는 복잡한 개발에서 상호이해, 타협, 의사소통을 체계적으로 접근하기 위한 것이다.

 

소프트에어 아키텍처는 소프트웨어의 여러 가지 원칙들의 집합

소프트웨어를 구성하는 컴포넌트들의 상호작용 및 관계, 각각의 특성을 기반으로 컴포넌트들이 상호 유기적으로 결합하는 소프트웨어의 여러 가지 원칙들의 집합이다.


소프트웨어 아키텍처 품질 요구사항

- 사용자의 요구사항을 얼마나 충족시키느냐에 따라 확립된다.

- 소프트웨어의 기능, 성능, 만족도 등의 요구사항이 얼마나 충족하는가를 나타내는 소프트웨어 특성의 핵심 집합이다.


2. ISO/IEC 9126 모델

소프트웨어 품질 특성과 평가를 위한 국제 표준이다.

외부 품질

- 외부에서 바라볼떄의 품질

- 기능성, 신뢰성, 사용성, 효율성, 유지보수성, 이식성으로 구분된다.

 

사용 품질

- 사용자가 사용할때, 어떤 명령을 줬을 경우에, 얼마만큼의 데이터 양을 줬을 경우에, 외부의 공격, 사용하는 데에 있어서 편리성을 따질 수 있는 품질  

- 효과성, 생산성, 안전성, 만족도

 

외부지표 (External Metrics)

- 실행 가능한 SW, 시스템을 시험, 운영 또는 관찰을 통하여 시스템을 구성하고 있는 일부분으로부터 추출된

소프트웨어 제품의 측정에 사용한다. 사용자, 평가자, 시험자 및 개발자에게 시험 수행이나 운영 중에 소프트웨어 제품에 대한 품질을 평가하는 항목이다.

- 사람도 외부,내부가 있듯이 외부에서의 보는 것, 이 사람의 말투는 어떻고, 걸음걸이는 어떻고, 외모는 이쁜가, 피부는 좋은가  등을 평가하는 것이다.

 

내부지표 (Internal Metrice)

설계, 코딩 도중에 실행할 수 없는 SW 품(명세서, 원시 코드 등)에 대하여 적용하고 설계상 요구되는 외부 품질을 성취하기 위하여 ISO 9126-3에 규정한다. 사용자, 평가자, 시험자 및 개발자가 소프트웨어 제품의 품질을 평가할 수 있도록 도움을 준다. 

 

실기에도 나온다.

 


1단계. UI 표준을 위한 환경 분석

사용자 경향 분석

- 기존 / 현존 UI 경향을 숙지하고 현재 UI 단점을 작성한다.

- 사용자의 요구사항을 파악하고, 쉽게 이해 가능한 기능 위주로 기술 영역을 정의한다.

(연세, 성벌에 따라서 능숙할 수도 안 능숙할 수 도 있기 때문에 환경 분석에서 사용자 경향 분석을 제일 먼저 한다.)

 


2단계. 기능 및 설계 분석

사용자 경향 분석 이후

 

기능 조작성 분석

- 사용자 편의를 위한 조작에 관한 분석을 확인한다.

- 스크롤바 지원 가능 여부, 마우스 조작 시 동선 확인

 

오류방지 분석

- 조작시 오류에 대해 예상 가능한지 확인한다.

- 의도치 않는 페이지 이동, 기능버튼의 명확한 구분 가능한지 확인, 기능 버튼 이름이 사용자 조작과 일치하는지 확인

- 최소한의 대응 예) 창을 닫으시겠습니까 등.. 

 

최소한의 조작으로 업무 처리 가능한 형태 분석

- 작업 흐름에 가장 적합한 레이아웃인지 확인한다.

- 기능 특성에 맞는 UI 확인 및 조작 단계 최소화와 동선 단순 여부 확인

- 예) 대부분 포털사이트는 로그인 정보가 오른쪽에 있다

이것도 사실 동선을 보면 로그인정보 밑에 쇼핑몰 광고들이 나열되어 있다.

이유는 로그인하고 광고보이면 뭐 좀 사라는 의미이다. 

 

UI의 정보 전달력 확인

- UI를 보고 어떤 기능인지 예측할 수 있어야 한다.

- 중요정보 인지, 쉽게 전달 가능 한지, 정보 제공의 간결성, 명확성을 확인하고 정보 제공방식의 일관성, 사용자 이해성 확인, 상호 연관성 높은 정보 인지 확인한다

- 오류 발생 시 해결 방법 접근 용이성 확인 


3. UI 요구사항 요소

데이터 요구

- 사용자 요구 모델과 객체들의 핵심 특성에 기반하여 데이터 객체를 정리한다.

- 인터페이스에 영향을 줄 수 있으니 '어떤 데이터를 주고받느냐'를 초기에 확인한다. 

# 예) Email 메시지 속성 데이터 : 제목, 송신자, 송신일, 참조인, 답변 등이 들어간다.

 

기능 요구

- 동사형으로 사용자의 목적 달성을 위해 실행해야 할 기능을 설명한다.

- 기능 요구 목록으로 정리한다.

- 최대한 철저하게 작성해야 한다.

# 사용자는 메일을 작성하거나, 수신, 참조하여 발송할 수 있다.

 

제품, 서비스 품질

- 감성 품질과 데이터/기능 요구 외 제품 품질, 서비스 품질을 고려한다.

- 시스템 처리 능력 등 정량화 가능한 요구사항을 확인한다.

- 메일이 잘 가느냐, 주소록을 다 치지 않아도 일부 스펠링 몇 개만 누르면 자동완성되는 게 일종의 서비스 품질이거나 기능이 될 수 있다. 

 

제약 사항 

비용, 데드라인, 시스템 준수에 필요한 규제 등 사전에 제약 사항의 변경 여부를 확인한다. 


정황 시나리오 작성

개발하는 서비스의 초기 모양을 상상하는 단계이다.

사용자 관점에서 작성하며 요구사항 정의에서 가장 기초적인 시나리오를 의미한다.

 

높은 수준과 낙관적인 상황에서 이상적 시스템 동작에 초점을 둔다.

- 육하원칙을 따르고 사용자가 주로 사용하는 기능 기반에서 작성한다.

- 간단명료하게 작성하여 정확하게 전달하고, 같은 동작기능은 하나의 시나리오에 통합한다.

- 외부 전문가, 경험자에게 검토를 의뢰하도록 한다. 

 

정황 시나리오 작성 예

정황 시나리오  요구사항
。사원은 출근하여 시스템에 로그인하고 오늘 업무를 확인한다.
。어제 요청한 결제가 승인되었는지 확인한다. 
。로그인하면 맨 위 화면에 오늘 업무가 표시되어야 한다.
。결제 요청 내역에 결제 승인 여부가 확인될 수 있도록 승인 내역은 다른색을 이용한다.

문제 풀이

1. 소프트웨어 품질 특성과 평가를 위한 국제 표준을 쓰시오.

ISO/IEC 9126

 

2. 정황 시나리오 작성의 특징 중 잘못 설명된 것은?

① 개발하는 서비스의 초기 모양을 상상하는 단계이다.

② 사용자 관점에서 작성하며 요구사항 정의에서 가장 기초적인 시나리오를 의미한다.

③ 낮은 수준과 비관적인 상황에서 이상적 시스템 동작에 초점을 둔다.

④ 육하원칙을 따르고 사용자가 주로 사용하는 기능 기반에서 작성한다.

 

3번 

높은 수준과 낙관적인 상황에서  

 

3. ISO/ IEC 9126에 근거한 소프트웨어 품질목표 중 명시된 조건 하에서 소프트웨어 제품의 일정한 성능과 자원 소요량의 관계에 관한 속성, 즉 요구되는 기능을 수행하기 위해 필요한 자원의 소요 정도를 의미하는 것은?

① Usability (유용성)

② Reliability (신뢰성)

③ Functionality (기능성)

④ Efficiency (효율성, 효과성)

 

4번

얼마나 자원을 쓰느냐

 

4번 ISO/IEC 9126의 소프트웨어 품질 특성 중 기능성 (Functionality)의 하위 특성으로 옳지 않은 것은?

① 학습성

② 적합성

③ 정확성

④ 보안성

 

1번

학습성 : 쉽게 배울 수 있느냐의 사용성에  해당한다.  

적합성 : 이 기능이 내가 원하는 것에 적합하냐

정확성 : 내가 어떤 명령어 기능을 요청했을 때 정확하게 제시하느냐

보안성 : 이 기능이 보안성을 제공하느냐

 

5. 다음 중 요구사항의 요소가 아닌 것은?

① 데이터 요구

② 기능 요구

③ 제품서비스 품질

④ 정황 시나리오

 

4번 


 

728x90
반응형
LIST