자격증 + 어학 17

5. 인터페이스 구현

모듈 연계를 위한 인터페이스 기능 식별 모듈연계 - 내부 모듈과 외부 모듈 또는 내부 모듈간 데이터 교환을 위해 관계를 설정하는것. EAI 와 ESB 방식이 있다. EAI(Enterprise Application Integration) - 기업 내 각종 애플리케이션 및 플랫폼 간의 정보전달, 연계 등 상호연동이 가능하게 해주는 솔루션. 비즈니스 간 통합 및 연계성을 증대시켜 효율성 및 각 시스템 간의 확정성(Dterminacy)을 높여준다.  EAI 구축유형:Point-to-Point - 애프리케이션을 1:1로 연결. 변경 및 재사용 어려움.Hub & Spoke - 단일 접점인 허브 시스템을 통해 데이터를 전송하는 중앙 집중형 방식. 확장 및 유지보수에 용이. 허브 ㅈ아애 시스템 발생시 시스템 전체에 영..

4. 애플리케이션 테스트 관리

애플리케이션 테스트 애플리케이션 테스트는 애플리케이션에 잠재되어 있는 결함을 찾아내는 일련의 행위 또는 절차이다. 개발된 소프트웨어가 고객의 요구사항을 만족시키는지 확인하고 기능을 정확히 수행하는지 검증한다. 테스트를 실행하기 전에 개발한 소프트웨어의 유형을 분류하고 특성을 정리해서 중점적으로 테스트할 사항을 정리해야 한다.  Validation(확인) - 사용자의 입장에서 Verification(검증) - 개발자의 입장에서  애플리케이션 테스트의 기본 원리 완전한 소프트웨어 테스팅은 불가능 하다. 파레토법칙 - 상위 20% 사람들이 전체 부의 80%르 가지고 있거나 상위20% 고객이 매출의 80%를 창출한다는 의미. 테스트로 발견된 80%의 오류는 20%의 모듈을 집중적으로 테스트하여 효율적으로 오류를..

3. 제품 소프트웨어 패키징

소프트웨어 패키징 소프트웨어 패키징 이란 모듈별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는것. 개발자가 아니라 사용자 중심으로 진행하고 소스 코드는 향후 관리를 고려햐여 모듈화하여 패키징한다. 사용자가 소프트웨어를 사용하게 될 환경을 이해하여, 다양한 환경에서 소프트웨어를 손쉽게 사용할 수 있도록 일반적인 배포 형태로 패키징 한다. 모듈화* - 소프트웨어의 성능을 향상시키거나 시스템의 수정 및 재사용, 유지 관리 등이 용이하도록 시스템을 각 기능별로 나누는것 패키징시 고려사항 사용자의 시스템환경, 운영체제, CPU, 메모리 등에 필요한 최소 환경을 정의한다. UI는 사용자가 눈으로 직접 확인할 수 있도록 시각적인 자료와 함께 제공하고 메뉴얼과 일치시켜 패키징한다. 하드웨어와 함께 관리 될 수..

2. 통합구현

단위 모듈 구현 구성요소는 처리문, 명령문, 데이터 구조 등이 있고 독립적인 컴파일이 가능하며 다른 모듈에 호출되거나 삽입되기도 한다. 구현하기 위해서는 단위 기능 명세서를 작성한 후 입/출력 기능과 알고르짐을 구현해야 한다. 단위 기능 명세서 작성 -> 입출력 기능 구현 -> 알고리즘 구현 단위 기능 명세서 작성 설계 과정에서 작성하는 기능 및 코드 명세서나 설계 지침과 같이 단위 기능을 명세화한 문서들. 대형 시스템을 분해하여 단위 기능별로 구분하고 각 기능들을 계층적으로 구성하는 구조화 과정을 거침. 모듈의 독립적인 운용과 한 모듈 내의 정보가 다른 모듈에 영향을 주지 않도록 정보 은닉의 원리를 고려. 정보은닉* - 한 모듈 내부에 포함된 절차와 자료들의 정보가 감추어져 다른 모듈이 접그하거나 변경..

1. 데이터 입 출력 구현

자료구조가장 우선적인 고려사항은 저장 공간의 효율성과 실행시간의 신속성. 분류선형구조: 배열, 선형 리스트(continuous list, linked list), 스택, 큐, 디큐 비선형구조: 트리, 그래프 연속리스트 - 중간에 데이터를 추가 하거나 삭제하려면 해당 위치 이후의 모든 자료의 이동이 필요하다. 기억장소의 효율은 밀도가 1로서 가장 좋다. 연결리스트(Linked List) - 노드의 삽입 삭제 작업이 용이. 연결을 위한 포인터 필요부분이 필요하기 때문에, 순차 리스트에 비해 기억 공간의 이용 효율이 좋지 않다. 포인터 찾는 시간 때문에 선형에 비해 접근 속도가 느림. 스택 (Stack) - 리스트의 한쪽 끝으로만 자료의 삽입, 삭제 작업이 이루어짐. LIFO 방식으로 자료 처리. 재귀 호출,..

3. 응용 SW 기초 기술 활용

운영체제의 개념 운영체제의 목적 처리 능력 향상(Throughput): 일정시간내에 시스템이 처리하는 일의 양 반환 시간 단축(Turn Around Time): 시스템에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간 사용 가능도(Availability): 시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도 신뢰도(Reliability): 시스템이 주어진 문제를 정확하게 해결하는 정도  운영체제의 구성 제어 프로그램 - 컴퓨터 전체의 작동 상태 감시, 작업의 순서 지정, 작업에 사용되는 데이터 관리 등의 역할을 수행하는 것으로 감시 프로그램, 작업 관리 프로그램, 데이터 관리 프로그램 등 이 있다. 처리 프로그램 - 제어 프로그램의 지시를 받아 자용자가 요구한 문제를 해결하기 위한 프로그램으로..

2. 화면설계

사용자 인터페이스 사용자의 시스템 간의 상호작용이 원활하게 이루어지도록 도와주는 장치나 소프트웨어. 인터페이스와 관계있는 소프트웨어 개발 영역을 결정하는 요소: 소프트웨어에 의해 간접적으로 제어되는 장치와 소프트웨어를 실행하는 하드웨어, 기존의 소프트웨어와 새로운 소프트웨어를 연결하는 소프트웨어, 순서적 연산에 의해 소프트웨어를 실행하는 절차.  사용자 인터페이스의 특징 사용자의 만족도에 가장 큰 영향을 미치는 중요한 요소. 소프트웨어 영역중 변경이 가장 많이 발생. 사용자의 편리성과 가독성을 높임으로써 작업 시간을 단축시키고 업무에 대한 이해도를 높여준다. 사용자 중심으로 설계되어 사용자 중심의 상호 작용이 되도록 한다. 수행 결과의 오류를 줄인다. 사용자의 막연한 작업 기능에 대해 구체적인 방법을 제..

1. 요구사항 확인

소프트웨어 생명 주기 소프트웨어 생명주기란 - 요구사항을 분석해서 설계하고 그에 맞게 개발한 후 소프트퉤어의 품질이 항상 최상의 상태를 유지할 수 있도록 관리하는데, 이러한 과정을 단계로 나눈 것 소프트웨어의 개발 방밥론 - 소프트웨어 개발과 유지보수 등에 필요한 여러가지 작업들의 수행 방법과 이러한 작업들을 좀 더 효율적으로 수행하기 위해 필요한 각종기법 및 도구를 체계적으로 정리하여 표준화 한 것 소프트웨어 공학 - 소프트웨어의 위기를 극복하기 위한 방안으로 연구된 학문이며 여러 가지 방법론과 도구, 관리 기법들을 통하여 소프트웨어의 품질과 생산성을 향상시킬 목적으로 함. 기본 원칙은 현대적인 프로그래밍 기술을 계속적으로 적용해야하고 개발된 제품의 품질이 유지되도록 지속적으로 검증해야 하고, 소프트웨..

4. 인터페이스 설계

인터페이스 요구사항 검증요구사항 검증(Requirement Verification) 인터페이스의 설계 및 구현전에 사용자들의 요구사항이 요구사항 명세서에 정확하고 완전하게 기술되었는지 검토하고 개발 범위의 기본인 베이스라인을 설정하는 것. 인터페이스의 설계 및 구현 중에 요구사항 명세서의 오류가 발견되어 이를 수정할 경우 많은 비용시 소요되므로 프로젝트에서 요구사항 검증은 매우 중요하다. 인터페이스 요구사항 검증은 요구사항 검토 계획 수립 -> 검토 및 오류 수정 -> 베이스라인 설정 순으로 수행한다.인터페이스 요구사항 검토 계획 수립  프로젝트 이해관계자들이 프로젝트 품질 관리 계획을 참조하여 다음과 같이 인터페이스 요구사항 검토 계획을 수립. 검토 계획이 수립되면 요구사항 검토 참여자들에게 검토 관련..

3. 애플리케이션 설계

소프트웨어 아키텍처 소프트웨어 아키텍처는 소프트웨어의 골격이 되는 기본 구조이자, 소프트웨어를 구성하는 요소들 간의 관계를 표현하는 시스템의 구조 또는 구조체이다. 개발 시 적용되는 원칙과 지침이며, 이해 관계자들의 의사소통 도구로 활용된다. 기본적으로 좋은 품질을 유지하면서 사용자의 비기능적 요구사항 으로 나타난 제약을 반영하고, 기능적 요구사하을 구현하는 방법을 찾는 해결과정이다.  상위 설계 별칭: 아키텍처 설계, 예비 설계 설계 대상: 시스템의 전체적인 구조 세부 목록: 구조, DB, 인터페이스 하위 설계 별칭: 모듈 설계, 상세 설계 설계 대상: 시스템의 내부 구조 및 행위 세부 목록: 컴포넌트, 자료 구조, 알고리즘  모듈화 모듈화란 소프트웨어의 성능을 향상시키거나 시스템의 수정 및 재사용, ..