랑아
article thumbnail

통합 구현 도구

01. IDE 도구

1) IDE 도구의 개념

  • IDE(Intergrated Development Environment)는 프로그램 개발에 관련된 모든 정보를 하나의 프로그램 안에서 처리하는 환경을 제공하는 프로그램
  • 기존 방식은 코딩 편집기, 컴파일러, 디버깅 등을 별도로 수행하였지만, IDE는 프로그램 개발에 관련된 모든 기능을 하나로 묶어 대화식(GUI 방식)으로 작업을 수행할 수 있도록 제공한 통합 개발 인터페이스 환경

2) IDE 도구의 기능

  1. 개발 환경 지원
    • Java, C++ 등의 언어를 이용하여 프로그램을 개발할 수 있는 환경을 제공
  2. 컴파일 및 디버깅 기능 지원
    • 프로그램 소스 코드가 완성이 되면 컴파일을 할 수 있도록 지원
    • 컴파일하여 문법적인 오류를 찾을 수 있도록 지원
    • 디버깅을 이용하여 논리적인 오류를 찾을 수 있도록 지원
  3. 외부 모듈과 통합 기능 지원
    • EAI, ESB 등의 외부 인터페이스 모듈과 통합할 수 있는 기능 지원
      • EAI : 통신 프로토콜이나 통합 방식을 변경할 수 있는 어댑터를 제공하여 이 기종 시스템 간의 연동을 가능하게 해주는 시스템으로 허브 시스템을 통해 시스템을 통합하는 중앙 집중식 방식
      • ESB : 웹 서비스 기반으로 통신이 표준화된었고, 통신은 EAI처럼 별도의 어댑터가 필요 없음
    • JDBC, ODBC와 데이터베이스 연동 기능 지원
      • JDBC : Java 언어 안에서 데이터베이스를 연결해주는 프로그램
      • ODBC : Microsoft에서 데이터베이스를 연결해주는 표준 프로그램
    • 형상 관리, 배포 관리 기능 지원

3) IDE 도구의 종류

  프로그램     개발사     플랫폼     운영체제     지원 언어  
  이클립스  
(Eclipse)
  IBM, 이클립스 재단     크로스 플랫폼     Windows, Linux, Mac OS     Java, C, C++, PHP, JSP  
  라자루스  
(Lazarus)
  Lazarus Team     크로스 플랫폼     Linux 배포판, FreeBSD, Mac OS, Windows     Free Pascal, Pascal SDK  
  비주얼 스튜디오  
(Visual Studio)
  마이크로소프트     Win32/64     Windows     Basic, 닷넷, C++, C, C#  
  안드로이드 스튜디오  
(Android Studio)
  Google     Android     Windows, Linux, Mac OS     Java, C, C++  
  엑스 코드  
(Xcode)
  Apple     Mac, iPhone     Mac OS, iOS     Java, C, C++, C#, AppleScript  
  IDEA;     Jetbrains          Windows, Linux, Mac OS     Java, JSP, XML, Go, Kotlin, PHP  
  C++ 빌더     엠바카데로 테크놀러지     Win32     Windows     C, C++  
  J 빌더     엠바카데로 테크놀러지     Win32     Windows     Java  



02. 협업 도구

1) 협업 도구의 개념

  • 도구는 하나의 소프트웨어 개발 프로젝트에 참여하는 수십 명에서 수천 명의 개발자가 서로 다른 작업 환경에서도 원활하게 프로젝트를 수행할 수 있도록 도와주는 협업을 위한 도구
  • 협업 소프트웨어, 그룹웨어 등으로도 불림

2) 협업 도구의 필요성

  • 소프트웨어 개발 시 많은 개발자가 참여하기 때문에 개발자들 간의 협업은 절대적으로 필요함
  • 개발자마다 전문 분야, 경험이나 목표가 다르기 때문에 개발자 간의 유대감을 증대시키기 위해서 또는 문제가 발생하지 않도록 지속적으로 대화를 해야 함
  • 통합 구현을 위해서는 개발자 간의 협업 및 협업에 필요한 도구도 필요함
  • 작업 일정, 아키텍처가 수시로 변경되기 때문에 개발자 간의 효과적인 기술 공유가 필요함

3) 협업 도구의 기능

  1. 개발자 간 의사 교환
    • 개발자 간 작업을 공유할 수 있음
    • 오류 현상 인식 공유, 의견 공유, 개선점 공유 등 다양한 의사소통을 할 수 있음
  2. 일정 및 이슈 공유
    • 개발자 간 작업 일정 및 이슈를 공유할 수 있음
    • 오류 현상 인식 공우, 일정 공유, 이슈 공유 등 다양한 의사소통을 할 수 있음
  3. 개발자 간 집단 지성 활용
    • 새롭고 독특한 아이디어를 공유할 수 있는 집단 지성이 만들어짐

4) 협업 도구의 분류

1. 문서 공유 도구

  • Google Drive
    • 개발자 간 문서를 공유하거나 고객과 문서를 공유할 수 있음
    • 인터넷 클라우드 서비스를 통해 공동 작업을 할 수 있음
  • Slide
    • 인터넷상에서 파워포인터 슬라이드들을 만들어 공유할 수 있음

2. 소스 공유 도구

  • GitHub
    • 프로그램 소스를 공유하고 협업하여 개발할 수 있는 웹 호스팅 서비스
    • 이곳에서 많은 오픈소스 개발이 이루어짐

3. 아이디어 공유 도구

  • Evernote
    • 노트를 작성하는 것과 같이 정보를 축적하고 저장하는 웹 서비스
    • 개발자들이 중요한 아이디어를 공유할 수 있음
    • 개발 업무에 관련된 기사들을 스크랩하여 공유함
  • Invision
    • 고객에게 웹 디자인 결과물을 보여줄 때 주로 사용
    • 개발자들과 디자이너가 주로 사용하는 공유 공간
    • 인터넷상에서 사용하는 프로토타이핑 도구

4. 디자인 공유 도구

  • Redpen
    • 웹 디자이너들이 주로 사용하는 도구
    • 자신의 디자인을 업로드하고 개발자 간에 공동 작업을 수행함

5. 마인드 매핑 도구

  • Mind Meister
    • 인터넷상에서 수행하는 공동 마인드 Mapping 도구
    • 인터넷 클라우드를 통해 자기 생각을 시각화하고 공유하고 발표할 수 있음
    • 공동으로 브레인스토밍을 하거나 정보 간의 관계망 그리기를 공동으로 수행함

6. 프로젝트 관리 도구

  • Trello
    • 인터넷상의 공동 프로젝트 관리 도구
    • 웹 기반 프로젝트 관리 비주얼 프로그램
    • 프로젝트의 각 과제들을 분류하고 구성원을 배정하여 작업
  • Redmind
    • 웹 기반의 프로젝트 관리와 버그 추적 기능을 제공하는 도구
    • 다수의 프로젝트 관리 도구로 오픈소스 프로그램
  • JIRA
    • 프로젝트 관리 기능을 제공하는 소프트웨어
    • 프로젝트 버그, 이슈 트래킹 기반 협업 도구
  • Task World
    • 인터넷 클라우드 기반의 프로젝트 관리 소프트웨어, 그룹웨어, 협업 도구
    • 프로젝트를 효율적으로 관리하고 투명한 인사 평가를 할 수 있음
    • 개발자가 자유롭게 프로젝트 일정과 팀원을 정할 수 있음

7. 일정 관리 도구

  • Google Calendar
    • 모바일과 PC 연동이 가능한 일정 관리 서비스
  • Confluence
    • 개발자 간 일정과 문서를 공유할 수 있음
    • 작업 문서를 생성하고, 페이지와 파일에서 협업하는 도구

'정보처리기사 > 소프트웨어 개발' 카테고리의 다른 글

통합 구현 3  (0) 2023.05.16
통합 구현 2  (0) 2023.05.14
데이터 입출력 구현 8  (0) 2023.05.13
데이터 입출력 구현 7  (1) 2023.05.13
데이터 입출력 구현 6  (1) 2023.05.12
profile

랑아

@RangA

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!