아키텍처 2017. 4. 14. 02:14


소프트웨어 아키텍처 평가기법


소프트웨어 또는 시스템을 구축하기 위해 가장 중요한 것이 아키텍처죠!

아키텍처에는 시스템의 특성, 요구사항 등을 해결하기 위한 전략과 제약사항 포함되어야 겠죠.


이번에는 이렇게 힘들게 만든 아키텍처가 잘만든 것인지에 대한 평가를 위한 평가기법에 대해 알아 보겠습니다.



1. 소프트웨어 아키텍처 평가기법의 개요


1) 소프트웨어 아키텍처(Software Architecture) 평가기법이란?

 - 아키텍처의 접근법이 품질속성(보안, 성능, UI 등)에 미치는 영향을 판단하여 아키텍처 적합성을 판단 및 평가하는 표준기법


2) 소프트웨어 아키텍처 평가기법 유형


 관점

유형

내용 및 기법

 가시성

 가시적 평가

 Inspection, Review, Validation & Verification

 비가시적 평가

 SAAM, ATAM, CBAM, ARID, ADR 

 시점

 이른 평가

 아키텍처 구축과정 중 어느 때나 평가 가능

 비용 및 평가부담 적음

 늦은 평가

 기존 시스템의 요구사항에 대한 아키텍처의 적합성을  판단할 때  사용 



2. 평가기법 관계도 및 평가기법 설명


1) 평가기법 관계도




2) 평가기법 설명


 가. ATAM(Architecture Tradeoff Analysis Method)

 - 아키텍처의 품질속성에 초점을 맞춘 평가기법으로 품질속성 간의 상충관계를 평가

 - 특징

   -> 명확한 분석, Legacy System 분석에 활용가능

   -> 비기능적 요구사항(신뢰성, 사용성, 유지보수성 등) 중심분석

   -> 아키텍처 스타일, 품질속성은 SAAM 영향을 받음


 나. CBAM(Cost Benefit Architecture Method)

 - 아키텍처의 경제적 측면에 초점을 맞춘 평가기법

 - 특징

   -> ATTAM의 결과물을 기반으로하여 아키텍처의 경제성을 분석

   -> ROI 측면의 의사결정을 위한 기준 제시


 다. SAAM(Software Architecture Analysis Method)

 - 사용자의 요구사항 시나리오와 아키텍처 간의 매핑을 통한 적합성 분석

 - 특징

   -> 아키텍처의 Modifiability와 Functionality 집중분석

   -> 평가 경험이 없는 조직에서도 활용가능


 라. ADR

 - 아키텍처의 구성요소 간의 응집도를 평가하는 기법


 마. ARID(Architecture Reviews for Intermediate Design)

 - 전체 아키텍처가 아닌 특정 부분에 대한 품질요소에 집중하여 평가

'아키텍처' 카테고리의 다른 글

웹 환경의 이해(2/2)  (0) 2017.01.18
웹 환경의 이해(1/2)  (0) 2017.01.18
posted by 생각퍼즐
:
보안 2017. 4. 13. 00:54


Client와 Server간의 암호화 통신을 위한 SSL/TLS


SSL(TLS)란?

SSL은 Secure Socket Layer의 약자로 웹서버와 웹 브라우저 간의 암호화 통신을 위하여 응용계층과 TCP/IP 계층에서 동작하는 프로토콜이며, Netscape사에서 만들었으며 ISO표준 정식명칭은 TLS(Transport Layer Security)이다.



SSL/TLS의 주요기능

1) 인증 : 상대 사이트에 대한 신뢰성 인증

2) 암호화 : 다양한 암호화 알고리즘을 이용하여 메시지 암호화

3) 무결성 : 송/수신 메시지에 대한 Checksum기능, 변조 방지

4) 지원 프로토콜 : HTTPS(port:443), TELNETS(port:992), POP3S(port:995), SFTP(port:22)



SSL/TLS 처리과정


[Handshake 과정]


위의 그림에서 보듯이 많은 단계를 거쳐야 메시지 송/수신 처리가 가능하다. 그만큼 처리 속도가 떨어진다는 얘기다. 또한, DDOS 공격 시 그 만큼 부하가 많이 발생한다는 의미이기도 하다. 그래서 주요정보가 송/수신되는 기능에만 SSL/TLS 처리가 필요함.


그외 암호화 통신을 위해 SET(전자결제), IPSEC(VPN 구현) 등이 있음.

'보안' 카테고리의 다른 글

코드 난독화 (Obfuscation)  (0) 2017.01.26
Ransomware(랜섬웨어)  (1) 2017.01.25
posted by 생각퍼즐
:
프로그래밍 2017. 3. 17. 11:30

공지사항 등록 테스트


1. 등록화면 호출

 - http://localhost:8080/board/regNoticeView.do



2. 테스트 데이터 입력 및 첨부파일 등록



3. DB 확인


3.1 공지사항 입력 내용 확인


1
2
SELECT *
  FROM SCOTT.TB_NOTICE
cs



3.2 첨부파일 확인

1
2
SELECT *
  FROM SCOTT.TB_ATT_FILE
cs



사용자가 입력한 값이 정상적으로 DB에 저장된 것을 확인했습니다.

이것으로 길고 길었던 스프링 프로젝트 - 공지사항 구현을 끝내도록 하겠습니다.

공지사항 목록조회는 지금까지의 포스팅된 내용을 참고하여 구현하시면 좀 더 쉽게 하실 수 있을 겁니다. 


posted by 생각퍼즐
: