반응형

7. Applications & Systems Development

 

목차
1. 소프트웨어 개발 프로세스
2. 다양한 시스템


1.소프트웨어 개발 프로세스

#S/W 개발 프로세스


  - 비즈니스의 효과적인 기능 수행을 위해 필수적인 응용 시스템을 개발, 구입, 유지 보수, 폐기하는 과정을 시스템 개발 수명 주기(SDLC)라고 한다.
  - IT 자원을 통제, 관리하는 프로세스도 SDLC의 일부분이다.
   개발되는 모든 비즈니스 응용 시스템은 두 개의 범주에 속한다.

 

- 조직 중심의 컴퓨팅
 SDLC 접근방법을 이용
 알 필요를 기반으로 사용자와 부서의 정보를 수집, 추출, 저장, 보관하여 공유 하도록 하는것
 MIS(경영정보시스템), ERP, CRM(Customer Relationship Management) 등등
// 업무가 대규모로 바뀌면 적용하기 힘들다.

- 최종 사용자 중심 컴퓨팅
 성과의 최적화를 위해 데이터를 제공
 대안적 개발 접근 방법이 이용
 DSS, GIS(지리정보시스템) 등등

 

#프로젝트 계획수립
프로젝트가 성공하도록 지속적인 자원을 제공하기 위해서는 전체 과정에 대한 계획이 작성되고 감시되어야 하며 이를 위해서는 여러가지 기법이 사용된다.

S/W 규모 산정
- 원시코드 라인 수 (SLOC : Source Lineds of Code)
: 장점 
    Basic이나 cobol 등의 개발 도구일 경우 매우 유용
    정량적 측정이 가능
 단점
   최종 사용자에게 무의미
   새로운 개발도구에는 무의미


- 기능점수분석
  : 사용자가 눈으로 보고 상호작용하는 입/출력 파일, 인터페이스, 질의 등을 개수와 복잡도에 근거하여 정보시스템의 크기를 측정
   비즈니스 응용 S/W에는 적합하지만 OS, Network 관련 S/W에는 적합하지 않다.

- 핵심 경로 방법론 (CPM)
  : 각 테스크간에 전후 활동에 따라 만들어진 그래프에서 시간의 합이 가장 긴 경로
 프로젝트 완료에 필요한 최단시간
 CPM 패키지는 자원 활용을 분석하여 자원 균일화를 지원한다


- 프로그램 평가 검토 기법(PERT : program Evaluation Review Technique)
테스크 완료에 비관적, 낙관적, 가능성 높은 세가지 시나리오를 이용 네트워크 기반 도표를
작성하는 기법
프로젝트 일정의 추정치를 개발하는데 적합하다.
시간 견적 = (낙관치+비관치+4*가능성 높은)/6

- 간트 차트
 헨리 간트가 1919년 창안한 일정 계획 수립을 위한 차트
 각 활동의 시작 종료 및 동시 수행 사항을 보여준다.
 프로젝트의 진척 정도나 계획과의 일치성을 확인하는데 이용
 특정 단계의 완료나 프로젝트상의 중요한 달성을 추적하는데 사용된다.

 // 보험회사에서 성과를 띄어놓는 차트이다.


- 타임 박스
 프로젝트 계획 및 일정을 작성할 때 사용하는 경영 개념. 타임박스는 팀원이 프로덕트를 만
들기 위해 작업하는 시간 량을 고정한 것이다. 타임박스 접근방법을 사용할 경우, 시간은 고
정 요인이며 타임박스 내에 맞추기 위해 비용과 범위를 조정할 수도 있다.
비용의 초과나 일정의 지연을 방지해 준다.
품질 보증 프로세스는 필요 하다.
// 시간을 정해놓고 한다.


 #폭포수 모델
- 폭포수기법
소프트웨어 개발생명주기(SDLC; Software Development Life Cycle)에 기반하고 있
는 소프트웨어 개발 기법으로, 워터폴 모델,폭포수 모형,선형순차 모형,단계적 생명주기라고
도 한다. 한 번 떨어지면 거슬러 올라갈 수 없는 폭포수와 같이 소프트웨어 개발도 각 단계를
확실히 매듭짓고 다음 단계로 넘어간다는 의미에서 붙여진 명칭이다. 전통적인 시스템 생명
주기 모델로 소프트웨어를 개발할 때 가장 널리 사용된다.

//각단계마다 필요한산출물이있다.

- 단점
 예상치 못한 사건의 발생시 처리가 어려움
 고객(최종사용자)로부터 명확한 요구사항 입수가 어렵다.
 종료 시점까지 사용자가 시스템을 확인 할 수 없다.
 비즈니스가 변해도 시스템을 인도하기 전에 요구사항을 변경할 수 없다.

- SDLC단계
타당성 분석 , 계획과 요구 사항 정의 , 설계(제품설계, 상세설계) 또는 선택(구매)  개발(
코딩),시스템 구성 및 통합 , 구현 , 사후 관리(운영 유지보수)


 #나선형 모델

- 프로토 타이핑 개발방법론 

 

마치 건축에서 실제 건축물을 만들기 전에 설계도 따른 작은 모형을 만들듯이 소프트웨어의
기본적인 기능을 알아보기 위해서 원형을 만들고 이후의 소프트웨어 완성품을 예측해보는
방법이다. 국내에서는 파일럿 프로젝트라고 부르기도 한다. 너무 많은 비용과 시간이 들지
않는다면 프로젝트 시작을 위한 좋은 기반을 제공한다.

나선형 개발 방법론에 각 사이클을 구성하는 방법론이 될 수 있음 (민첩개발, 속성 개발 등)

 

#테스트 이슈

  - 목적 
     시스템 무결성 확보 
     시스템이 올바르게 동작 한다는 보증을 위해 주기적인 테스트를 실시하는것   
  - 응용 시스템이 설계된 바와 같이 기능하는지 검증하는 과정 

  - 종류 
     단위 : 개별 프로그램(모듈)별 Test, 코딩과 관련된 검증 
     통합 : 둘 이상의 컴포넌트의 연결 상태를 평가 
     시스템 : 복구, 보안, 볼륨, 성능, 스트레스와 같이 구성된 시스템이 정상 작동하는지 평가 
     병행 : 개발 시스템이 사용자 요구에 부합하는지 평가 
     최종인수 
        : 품질보증Test (QAT) : 기술적인 측면 
         사용자 승인(인수) Test(UAT) : 기능적인 측면, test 라이브러리에서 수행 
         이 테스트가 끝난 이후 실제 사용자에게 이관 구현됨

    // 화이트박스 : 원시코드의 논리적 구조가 정당한가 (준거성 테스트) 
    // 블랙박스 : 기능이 정상적으로 기능하는가(기능테스트), 출력값의 정확성(실증 테스트)

#통제 이슈

  - 유지 보수 단계에서의 통제 이슈 
  요구통제 (제품 변경에 대한 사용자의 요구사항을 관리)
  변경통제 (문제 정의와 분석, 변경사항 정리와 그에 따른 테스트 개발, 품질 통제, 재인증(recertification)과  인가)      
  릴리즈통제 (S/W 개발버전 통제)

 

2. 다양한 시스템

#데이터베이스 시스템


- DB의 보안 이슈
DB에서 보안은 Need-to-know에 기초하여 사용자의 활동을 제한하는 것이다.
View를 통해서 구현된다.
Granularity
 // 보안통제를 세분화
추가적인 보안 이슈 
 - 집성 : 낮은 레벨의 정보를 조합 높은 레벨의 정보를 획득하는 것
 - 추론 : 접근 불가능한 레벨의 정보를 추론하는 사용자의 능력

Data Warehouse
 - 기존 데이터를 기반으로 새로운 관계를 찾기 위한 주제 중심으로 분류된 데이터 저장소
 - 정보의 추출, 재구성, 재저으이 되어 접근과 분석이 이루어 진다. 
 - 상관 관계를 추출하는 것을 data mining이라고 한다. 
 - IDS에 이용

  //data mining : 상관 관계를 추출하는 것을 (IDS에 이용)

  - 객체 지향 시스템
    캡슐화되고 식별성(identity)을 갖는 객체의 그룹 
 

 - 분산 환경 
    DCE(Distributed Computing Environment) 
        : OSF에서 개발된 산업표준 S/W 기술 
    DCOM(Distributed Component Object Model) 
        : MS의 프로그램 인터페이스

- 전문가 시스템 
    지식베이스(Knowledge base) + 추론엔진 
    IDS에 활용

  - 신경망 시스템 
   자가 학습을 통한 지식 축척과 활용 
   문자, 음성인식 등에 활용

 

 

반응형

'2020 > 학원' 카테고리의 다른 글

정보보안 거버넌스 (7)  (0) 2020.02.27
정보보안 거버넌스(5)  (0) 2020.02.27
정보보안 거버넌스(4)  (0) 2020.02.27
정보보안 거버넌스(3)  (0) 2020.02.27
정보보안 거버넌스(2)  (0) 2020.02.26

+ Recent posts