Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 자바의 정석 기초편 ch6
- 스프링 db1 - 스프링과 문제 해결
- 스프링 mvc2 - 타임리프
- 코드로 시작하는 자바 첫걸음
- 자바의 정석 기초편 ch14
- 타임리프 - 기본기능
- 자바의 정석 기초편 ch9
- jpa 활용2 - api 개발 고급
- 2024 정보처리기사 시나공 필기
- 2024 정보처리기사 수제비 실기
- 스프링 db2 - 데이터 접근 기술
- jpa - 객체지향 쿼리 언어
- 자바의 정석 기초편 ch11
- 스프링 mvc2 - 로그인 처리
- @Aspect
- 자바의 정석 기초편 ch5
- 스프링 mvc1 - 스프링 mvc
- 스프링 mvc1 - 서블릿
- 게시글 목록 api
- 자바의 정석 기초편 ch12
- 자바의 정석 기초편 ch2
- 자바의 정석 기초편 ch7
- 자바의 정석 기초편 ch13
- 스프링 고급 - 스프링 aop
- 스프링 입문(무료)
- 자바의 정석 기초편 ch4
- 자바의 정석 기초편 ch1
- 자바의 정석 기초편 ch3
- 스프링 mvc2 - 검증
- 자바의 정석 기초편 ch8
Archives
- Today
- Total
나구리의 개발공부기록
1장 - 요구사항 확인 | 섹션4. 현행 시스템 파악, 섹션5. 개발 기술 환경 파악 본문
2024정보처리기사 준비 정리(필기 - 시나공, 실기 - 수제비)/필기 1강 - 소프트웨어 설계
1장 - 요구사항 확인 | 섹션4. 현행 시스템 파악, 섹션5. 개발 기술 환경 파악
소소한나구리 2024. 4. 7. 21:372024년도 시나공 필기 책 내용 정리
섹션4. 현행 시스템 파악
1. 현행 시스템 파악 절차
- 새로 개발하려는 시스템의 개발 범위를 명확히 설정하기위해 현행 시스템의 구성과 제공 기능, 시스템 간의 전달 정보, 사용되는 기술 요소, 소프트웨어, 하드웨어, 네트워크의 구성 등을 파악
1단계 | 시스템 구성 파악 시스템 기능 파악 시스템 인터페이스 파악 |
2단계 | 아키텍처 구성 파악 소프트웨어 구성 파악 |
3단계 | 하드웨어 구성 파악 네트워크 구성 파악 |
1) 시스템 구성 파악
- 현행 시스템의 구성은 조직의 주요 업무를 담당하는 기간 업무와 이를 지원하는 지원업무로 구분하여 기술
- 조직 내에 있는 모든 정보시스템의 현황을 파악할 수 있도록 각 업무에 속하는 단위 업무 정보 시스템들의 명칭, 주요 기능들을 명시
2) 시스템 기능 파악
- 현행 시스템의 기능은 단위 업무 시스템이 현재 제공하는 기능들을 주요 기능과 하부 기능, 세부 기능으로 구분하여 계층형으로 표시
3) 시스템 인터페이스 파악
- 현행 시스템의 인터페이스에는 단위 업무 시스템 간에 주고받는 데이터의 종류, 형식, 프로토콜, 연계 유형, 주기 등을 명시
- 데이터를 어떤 형식으로 주고 받는지, 통신 규약은 무엇을 사용하는지, 연계 유형은 무엇인지 등을 반드시 고려
4) 아키텍처 구성 파악
- 현행 시스템의 아키텍처 구성은 기간 업무 수행에 어떠한 기술 요소들이 사용되는지 최상위 수준에서 계층별로 표현한 아키텍처 구성도로 작성
- 아키텍처가 단위 업무 시스템 별로 다른 경우에는 가장 핵심이 되는 기간 업무처리 시스템을 기준으로 표현
5) 소프트웨어 구성 파악
- 소프트웨어 구성에는 단위 업무 시스템별로 업무 처리를 위해 설치되어 있는 소프트 웨어들의 제품명, 용도, 라이선스 적용방식, 라이선스 수 등을 명시
- 시스템 구축비용 면에서 소프트웨어 비용이 적지 않은 비중을 차지하므로 상용 소프트웨어의 경우 라이선스 적용 방식의 기준과 보유한 라이선의 파악이 중요
6) 하드웨어 구성 파악
- 하드웨어 구성에는 단위 업무 시스템들이 운용되는 서버의 주요 사양과 수량 , 이중화의 적용 여부를 명시
- 서버의 이중화는 기간 업무의 서비스 기간, 장애 대응 정책에 따라 필요 여부가 결정됨
- 현행 시스템에 이중화가 적용된 경우 대부분 새로 구성될 시스템에도 이중화가 필요하므로 이로 인한 비용 증가와 시스템 구축 난이도가 높아질 가능성을 고려해야 함
7) 네트워크 구성 파악
- 네트워크 구성은 업무 시스템들의 네트워크 구성을 파악할 수 있도록 서버의 위치, 서버 간의 네트워크 연결 방식을 네트워크 구성도로 작성
- 네트워크 구성도를 통해 서버들의 물리적인 위치 관계를 파악할 수 있고 보완 취약성을 분석하여 적절한 대응을 할 수 있음
- 네트워크에 장애가 발생한 경우 원인을 찾아가 복구하기 위한 용도로 활용
섹션5. 개발 기술 환경 파악
1. 개발 기술 환경의 정의
- 개발하고자 하는 소프트웨어와 관련된 운영체제, 데이터베이스 관리 시스템, 미들웨어 등을 선정할 때 고려해야 할 사항을 기술하고 오픈 소스 사용 시 주의해야 할 내용을 제시
1) 운영체제(OS, Operating System)
- 컴퓨터 시스템 자원들을 효율적으로 관리하며 사용자가 컴퓨터를 편리하고 효율적으로 사용할 수 있도록 환경을 제공하는 소프트웨어
- 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종으로 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공
- Windows, UNIX, Linux, Mac OS 등의 컴퓨터 운영체제와 IOS, Android등의 모바일 운영체제가 있음
2) 운영체제 관련 요구사항 식별 시 고려사항
구분 | 내용 |
가용성 | 시스템의 장시간 운영으로 인해 발생할 수 있는 운영체제 고유의 장애 발생 가능성 메모리 누수로 인한 성능 저하 및 재가동 보안상 발견된 허점을 보완하기 위한 지속적인 패치 설치로 인한 재가동 운영체제의 결함 등으로 인한 패치 설치를 위한 재가동 |
성능 | 대규모 동시 사용자 요청에 대한 처리 대규모 및 대용량 파일 작업에 대한 처리 지원 가능한 메모리 크기(32bit, 64bit) |
기술 지원 | 제작업체의 안정적인 기술 지원 여러 사용자들 간의 정보 공유 오픈 소스 여부(Linux) |
주변 기기 | 설치 가능한 하드웨어 여러 주변기기 지원 여부 |
구축 비용 | 지원 가능한 하드웨어비용 설치할 응용 프로그램의 라이선스 정책 및 비용 유지관리 비용 총 소유 비용(TCO) |
3) 데이터베이스 관리 시스템(DBMS)
- 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고 데이터베이스를 관리해주는 소프트웨어
- 기존의 파일 시스템이 갖는 데이터의 종속성과 중복성의 문제를 해결하기 위해 제안된 시스템 -> 모든 응용 프로그램들이 데이터베이스를 공용(공유)할 수 있도록 관리
- 데이터베이스의 구성, 접근 방법, 유지관리에 대한 모든 책임을 짐
- Oracle, IBM DB2, Microsoft SQL Server, MySQL, SQLite, MongoDB, Redis 등이 있음
4) DBMS 관련 요구사항 식별 시 고려사항
구분 | 내용 |
가용성 | 시스템의 장시간 운영으로 인해 발생할 수 있는 운영체제 고유의 장애 발생 가능성 DBMS의 결함 등으로 인해 패치 설치를 위한 재가동 백업이나 복구의 편의성 DBMS 이중화 및 복제 지원 |
성능 | 대규모 데이터 처리 성능(분할 테이블 지원 여부) 대용량 트랜잭션 처리 성능 튜닝 옵션의 다양한 지원 최소화된 설정과 비용 기반 질의 최적화 지원 |
기술 지원 | 제작업체의 안정적인 기술지원 여러 사용자들 간의 정보 공유 오픈 소스 여부 |
주변 기기 | 설치 가능한 운영체제의 종류 JDBC, ODBC와의 호환 여부 |
구축 비용 | 라이선스 정책 및 비용 유지관리 비용 총 소유 비용 |
5) 웹 애플리케이션 서버(WAS : Web Application Server)
- 정적인 콘텐츠 처리를 하는 웹 서버와 달리 사용자의 요구에 따라 변하는 동적인 콘텐츠를 처리하기 위해 사용되는 미들웨어
- 데이터 접근, 세션관리, 트랜잭션 관리 등을 위한 라이브러리를 제공하며 주로 데이터베이스 서버와 연동해서 사용
- Tomcat, GlassFish, JBoss, Jetty, JEUS, Resin, WebLogic, WebSphere등이 있음
6) 웹 애플리케이션 서버 관련 요구사항 식별 시 고려사항
구분 | 내용 |
가용성 | 시스템의 장시간 운영으로 인해 발생할 수 있는 운영체제 고유의 장애 발생 가능성 WAS의 결함 등으로 인해 패치 설치를 위한 재가동 안정적인 트랜잭션 처리 WAS 이중화 처리 |
성능 | 대규모 데이터 처리 성능 다양한 설정 옵션 지원 가비지 컬렉션(GC : Garbage Collection)의 다양한 옵션 |
기술 지원 | 제조업체의 안정적인 기술지원 여러 사용자들간의 정보 공유 오픈소스 여부 |
구축 비용 | 라이선스 정책 및 비용 유지관리 비용 총 소유 비용 |
7) 오픈 소스 사용에 따른 고려 사항
- 오픈 소스는 누구나 별 다른 제한 없이 사용할 수 있도록 소스 코드를 공개한 것으로 오픈 소스 라이선스를 만족하는 소프트웨어
- 오픈 소스를 사용하는 경우에는 라이선스의 종류, 사용자의 수, 기술의 지속 가능성 등을 고려해야함
'2024정보처리기사 준비 정리(필기 - 시나공, 실기 - 수제비) > 필기 1강 - 소프트웨어 설계' 카테고리의 다른 글
1장 - 요구사항 확인 핵심 요약 (1) | 2024.04.16 |
---|---|
1장 - 요구사항 확인 | 섹션 9. UML(Unified Modeling Language), 섹션 10. 주요 UML 다이어그램 (0) | 2024.04.14 |
1장 - 요구사항 확인 | 섹션6. 요구사항 정의, 섹션7. 요구사항 분석, 섹션8. 요구사항 분석 CASE와 HIPO (0) | 2024.04.14 |
1장 - 요구사항 확인 | 섹션2. 스크럼(Scrum)기법, 섹션3. XP기법(eXtreme Programming) (0) | 2024.04.07 |
1장 - 요구사항 확인 | 섹션1. 소프트웨어 생명주기 (1) | 2024.04.07 |