2015년 9월 8일 화요일

[SW공학 동영상 5화] 소프트웨어 아키텍처 개론

1. 아키텍처 필요성
  • 아키텍처 개념
  • SW아키텍트가 갖춰야 할 요건

2. 아키텍처 설계방법
  • SW아키텍처 결정요인 - 품질
  • 품질속성 - 종류, 시나리오
  • SW아키텍처 뷰


자세히 보기 →

안드로이드 애플리케이션 테스팅 Part 2

[앱 성능 테스트 : 엔드투엔드 방식과 테스트 ]

안드로이드 앱 성능 테스트에서 각 구성요소별 각기 다른 시나리오를 전부 테스트 하기 위해서는 엔드투엔드 앱 전송 모델이 필요합니다. 이를 통해 안드로이드 앱 개발자는 앱이 최종사용자들이 사용하는 기기에서 어떻게 작동하는지 제대로 이해할 수 있습니다.
이 글에서는 은행 앱을 예시로 활용하여 안드로이드 개발자들이 안드로이드 앱 성능 테스트하는 환경과 시나리오를 살펴보았습니다. 

안드로이드 앱 성능 테스트 구성요소
1. 안드로이드 애플케이션
2. 서버 구성요소
  • 운영체제: Windows Server 2000
  • JDK: 1.6
  • 웹 서버: Apache Tomcat
  • DB 서버: MySQL
3. 네트워크 에뮬레이터
4. Load Generator
5. 안드로이드 기기
6. 성능 모니터
7. 안드로이드 디버그 브릿지(adb: android debug bridge)
8. Dalvik 디버그 모니터 서버(DDMS: Dalvik Debug Monitor Server)

자세히 보기 →

SQL Azure 성능향상을 위한 아키텍쳐 관점에서 고려해야 할 3가지 요소

SQL Azure 애플리케이션이 최상의 성능을 발휘하는 방법을 아키텍쳐 관점에서 살펴봅니다. 샤딩(Sharding)으로 데이터를 작은 단위로 나누어 분산 관리하고, 인덱싱(Indexing)으로 데이터에 색인을 달아 검색 및 읽는 시간을 빠르게 하고, 네트워크 지연시간(Network Latency)을 최소화하기 위해 한번 접속으로 여러 DB 작업을 배치처리, 접속통계를 활용하여 빠른 데이터센터 접속 등의 방법을 제시합니다.

애플리케이션이 최상의 성능을 발휘하기 위해 SQL Azure 개발자가 아키텍쳐 관점에서 고려해야할 다음  사항에 대해 살펴봄.
  • 샤딩 (Sharding)
  • 인덱싱 (Indexing)
  • 지연시간 (Latency) 감소

데이터베이스가 SQL Azure 플랫폼에서 호스트 되면 관리 이슈가 줄고 유지비용도 절감됨.
  • 이용가능성 , 신뢰도 , 확장성이 높아짐
  • 인터넷을 이용하여 어디에서든지 접속할 수 있음
  • Pay-as-you-go( 사용한 만큼 지불 ) 와 bulk pricing( 대량구입가격 ) 이 모두 가능하여 가격 정책이 유연함