반응형



안녕하세요!

문모닝입니다!


문모닝의 IT_24.소프트웨어 개발 프로세스


변화하는 과학기술과

끊임없이 변화하는 시장 상황에 부합하는

IT의 트랜드를 하나하나 살펴보는

문모닝의 IT!



오늘의 문모닝과 함께 할

IT의 콘텐츠는

제가 정보처리기사를 공부하면서

애먹기도 했지만 재밌게 공부했던 내용인

소프트웨어 공학 중


'소프트웨어 개발 프로세스 모델'입니다








‘소프트웨어 개발 프로세스 모델’이라,,

제목만 들어도 지루하고 복잡할 것 같지 않나요?



하지만, 막상 이해해보면 쉬운 구조로 되어있습니다!

구조는 쉬우나, 여기서 적용되는 코딩이 어렵기에 다루기 힘든 것이죠!!

간단하게 코딩 전에 여기 있는 프로세스 모델에 대하여 한 번 알아보도록 하죠!





1. 주먹구구식 모델


주먹구구식 모델

(출처:http://terms.naver.com/entry.nhndocId=3532869&cid=58528&categoryId=58528)



주먹구구식 모델은 정말 말그대로 단순합니다.

가장 먼저 코딩작업을 통해 제품을 만듭니다.

만든 제품을 사용해 보았을 때,

문제가 발생하면 코딩작업을 통해 수정하고,

문제가 없을 시에는 그냥 사용하는 매우 단순한 구조입니다.



이 구조는 순차적으로 꼼꼼히 작업한 것이 아니기 때문에,

상황에 따른 문제점이 발생 시 대처하기 어려워

지속적인 관리가 힘들다는단점이 있습니다.









2. 선형순차적모델(Waterfall Model; 폭포수 모델)


폭포수 모델

(출처:http://terms.naver.com/entry.nhn?docId=3532870&cid=58528&categoryId=58528&expCategoryId=58528)




선형 순차적 모델의 대표로 폭포수 모델이 있습니다.


위의 그림처럼 이 방식은 한 단계, 한 단계를 순차적으로 마무리하며

최종적으로 한 제품을 완성시키는 모델입니다.


한 번 내려온 계단을 다시 올라가는 일이 없도록

한 과정을 완벽하게 마무리 한 후에

다음 작업을 진행합니다.


각 과정을 마무리 지을 때마다 사용자에게 검증을 받음으로써

추후에 문제 발생 시,

책임소재를 쉽게 나눌 수 있다는 장점이 있습니다.





3. V모델


V모델

(출처:http://terms.naver.com/entry.nhn?docId=3532873&cid=58528&categoryId=58528&expCategoryId=58528)



이 모델은 폭포수모델의 변형된 버전입니다.

폭포수 모델은 각 단계가 마무리 된 후,

사용자에게 확인을 받고 매듭을 짓는다면,

V모델은 각 단계마다 테스트를 추가하여

추후 프로그램 사용시에 발생할 수 있는 오류를

제작과정에서 찾아내어 없애자는 목표를 가지고 이루어지는 모델입니다.







4. 진화적 프로세스 모델



위에서 보았던 선형 순차적 모델의 대표적인 모델이

'폭포수 모델'이었다면,

진화적 프로세스 모델의 대표적인 모델은 '프로토 타입'입니다.



진화적 프로세스 모델

(출처:http://terms.naver.com/entry.nhn?docId=3532876&cid=58528&categoryId=58528&expCategoryId=58528)


단순한 프로그래밍 작업이라면 상관 없지만,

몇 년을 내다보거나,

아주 큰 투자비용을 발생시키는 대규모 프로그래밍의 경우에는

프로토타입 모델이 필요합니다.


개발자와 사용자 간에 아무리 많은 의사전달이 있다 하더라도

각자의 머리속에서 그려낸 예상 모델은 다를 수 있습니다.


드라마 제작이 들어가기 전에 사전 시나리오를 보는 것과 마찬가지로,

프로그램도 개발 전에 예상 모델을 만든 후에 사용자에게 제시하여

사용자의 요구사항에 따라 프로토타입 모델을 조정한 후에,

본 모델의 프로그래밍이 설계되고 제작되기 시작하는 방식입니다.






5. 나선형 모델(Spiral Model)


나선형 모델

(출처:http://terms.naver.com/entry.nhn?docId=3532879&cid=58528&categoryId=58528&expCategoryId=58528)



나선형 모델은 폭포수 모델과 진화적 프로세스 모델의 장점이

합쳐진 것이라 볼 수 있습니다.


진화적 프로세스에서는 소비자의 요구에 따른 프로토타입 모델을 바로 만들었다면,

나선형 모델에서는 위험요소를 분석한 후에 제작에 들어갑니다.


이 과정을 통해 제작된 1차 프로토타입 모델은 사용자에게 검증을 받은 후,

추가 요구사항 및 수정 내용을 참고하여 2차 프로토타입 모델로 완성됩니다.


만들어진 프로토타입 모델은

다시 사용자에게 검증을 받고 수정하는 과정이

수차례 반복되면서 최종적으로 프로토타입 모델을 벗어나 제품으로 완성됩니다.





6. 단계적 개발 모델


단계적 개발 모델

(출처 : http://terms.naver.com/entry.nhn?docId=3532882&cid=58528&categoryId=58528&expCategoryId=58528)




단계적 개발 모델은 갤럭시 휴대폰에 비교할 수 있습니다.

갤럭시S를 개발하여 소비자가 사용하는 동안에

개발자는 갤럭시S2를 만들고,


갤럭시 S2를 소비자가 사용하는 동안에

개발자는 갤럭시 S3를 만드는 것처럼

점차적으로 사용자는 모델을 사용하면서,  

동시에 개발자의 모델의 신버전을 개발해나가는 방식입니다.









7. 통합프로세스 모델


통합프로세스 모델

(출처:http://terms.naver.com/entry.nhn?docId=3532885&cid=58528&categoryId=58528)



통합 프로세스 모델의 개발 과정은

도입, 구체화, 구축, 전이

크게 4단계로 나눌 수 있습니다다.


크게 나뉜 단계들은 다시 수차례 반복 실행을 하는 작은 단위로 나누어집니다.


도입단계에서는

비즈니스 모델링 및 요구사항 정의가 많이 이루어집니다.


아이디어, 프로젝트 실험 가능성, 프로젝트 계획 및 전망, 위험요소 등

직접 소프트웨어 개발을 실행 하기 전

준비단계라고 볼 수 있습니다.


구체화 단계는 제작 준비를 줄이고,

어떻게 제작할 것인지 직접 분석, 설계하는 작업을 주로 실행합니다.


구축 단계에서는 실제 만들어진 프로토타입을 기반으로 구현 작업을 실행합니다.

또한 테스트 작업도 점차 늘려가는 단계입니다.


전이 단계에서는 마무리 작업 등을 시행한다고 볼 수 있습니다.

개발된 모듈에 대해 테스트를 주로 실행하고,

배포 가능한 단위로 묶어서

사용자에게 인수해주는 과정 등을 시행합니다.


지금까지 위에서 설명했던 것들은 각 단계에서 가장 많이 시행되는 것들입니다.


모든 단계에서 대부분의 모든 작업이

그 양을 달리하며 계속 시행되고 있다는 것이

통합 프로세스 모델의 특징입니다.




8. 애자일 프로세스



가장 간단하고 꼭 필수적인 것들만을 집어 넣어

 신속하게 1차적으로 소프트웨어를 만듭니다.


이렇게 만들어진 소프트웨어를 사용자가 사용하고 있는 동안에,

추가적인 사용자의 요구사항과 따로 채워져야 할 부분을 빠르게 만들어

2차적으로 제공합니다.


이렇게 계속 사용자는 사용하면서 추가적으로 요구사항을 내놓고,

개발자는 신속하게 소프트웨어를 계속 업그레이드 시킵니다.

이 과정은 짧으면 짧을수록 사용자에게 편리합니다.

이러한 소프트웨어의 개발과정은 사용자와 개발자가

지속적으로 자주 연락하고,

실제 사용하면서 가장 필요한 부분들을 위주로 개발시켜 나가기에

효율성도 높은 개발 방법입니다.





오늘은 여러가지 소프트웨어 개발 프로세스 모델에 대하여 알아보았습니다!

비슷한 듯 하지만,

다양한 모델들이 상황에 따라 다르게 사용되어

참 다양한 소프트웨어들이 안정적으로 구축되는 것 같은데요!!


과연 다음엔 어떤 모델이 등장할지 너무 기대됩니다!






반응형
반응형



안녕하세요!

문모닝입니다!



어디가서 돈주고 배워본 적 없는 독학 20년의

나만의 노하우를 나누는 문모닝의 컴퓨터공부!



오늘은 파워포인트를 만들 때

작업 시간을 단축시켜주고

옆에서 보는 사람이 있을 때

뭔가 되게 있어 보이게 하는(?)


파워포인트의 유용한 단축키들입니다!



Ctrl키와 Shift키의 활용


파워포인트에서 키보드를 활용한 단축키를 쓸 때

가장 유용하게 사용될 수 있는 키는

Ctrl과 Shift입니다!




저장 : Ctrl + S


열심히 파워포인트를 만들었는데

엥? 응답없음?

지금까지의 노력이? 하는 경험.


아직 겪어본적 없으시다면

대단히 축복받은 분이십니다.


이런 경험때문에 분노와 허무와 뜬금없는 현자타임

겪어본 분들이 많으실텐데요


작업하는 중간 중간에

어렵지 않고 오래걸리지 않으니

Ctrl+S를 이용한 빠른 저장으로

그런 사건을 미연에 방지할 필요가 있겠습니다!


갑자기 핫식 광고가 생각나네요




다른이름으로 저장 : Shift + Ctrl + S


이미 저장한 적 있는 파일로 수정해서

새로운 파일로 저장하고 싶을 땐?


'Shift' 하나만 같이 눌러주면

다른 이름으로 저장!





복사하기, 붙여넣기 : Ctrl + C, Ctrl + V


이건 이미 대중적으로 널리 알려진 단축키로

특정 글자 또는 개체(그림 등)를

그대로 붙여넣을 때 사용하는 단축키입니다.




서식복사하기 : Shift + Ctrl + C, Shift + Ctrl + V


이건 아마도 그림을 보면서 설명하는게 빠를 것 같군요



예를 들어 위와 같은 상황에서

각 글자들은

각각의 가로 텍스트 상자로 글자를 써 넣은거구요,

크기와 폰트가 다릅니다.


저는 가운데 '띠요옹'은 크기도 맘에 들고

폰트 모양도 맘에 드는데

왼쪽 아래 '띵'이라는 녀석이 마음에 들지 않는군요


띠요옹을 닮게 해야겠습니다.



이런 경우

띠요옹이 가지고 있는 '서식 속성'

즉, 폰트 크기와 모양, 그리고 색깔까지

그대로 따라오도록 만들 수 있습니다.




먼저 베끼고 싶은 상태의 개체를 클릭해서

Shift + Ctrl + C (서식복사)를 해준 다음,



따라가야할 녀석을 선택한 후

Shift + Ctrl + V (서식 붙여넣기)를 눌러주면



뙇! 끝!

어때요? 참 쉽죠?


서식 복사는 텍스트 뿐만 아니라

도형에서도 적용할 수 있습니다.


도형 채우기 색상, 도형 테두리 등을 그대로 가져올 수 있죠


어라? 크기는 못 가져오나?


크기까지 똑같은 도형이라면

그냥 복사..



개체 전체 선택하기 : Ctrl + A


파워포인트 작업을 하다보면

겹치는 개체들도 있고

각각을 선택하자니 귀찮을 때가 종종 있습니다.


그럴때는 간단하게

Ctrl + A를 통해

전체 선택으로 한방에 해결!




그룹 설정하기 : Ctrl + G


마찬가지로 종종 겹치는 개체들로 인해서,

그리고 도형들의 경우 함께 그룹을 지어줘야

현재의 비율을 유지하면서

그대로 확대/축소할 수 있기 때문에

그룹 설정 기능은 알아두면 상당히 유용합니다.


그룹 설정 기능은

그룹 짓고자 하는 개체들을 선택한 후

Ctrl+G 버튼을 눌러주면 되는데요!


이번에도 그림을 보면서 설명 들어갑니다.




예를 들어,

이런 다양한 원 모양을 가진 도형(개체)들이 있을 때




얘네를 전부 선택한 후

(드래그로 선택할 수도 있고

하나가 선택된 상태에서

다른 하나를 Shift 키와 함께 클릭하면

함께 선택할 수도 있고

이 슬라이드에 얘네 뿐이라면

위에서 언급한 Ctrl + A를 쓸 수도 있겠죠)


Ctrl + G를 눌러주면



이 안에 있던 도형들은

마치 한 몸인 듯한

'그룹'이 됩니다.



그룹 지었던 녀석들을 풀고 싶다면?

Shift + Ctrl + G!



그렇다면 그룹일 때와 그룹이 아닐 때의 차이를 한번 볼까요?




좀전에 그룹지은 녀석들을

크게 키워봤습니다.

뭐 별로 이상함을 못느끼겠죠?

당연히 그 녀석들이 그렇게 커진거니까요



그렇다면 그룹을 해제해보고

다시 크게 키워보겠습니다.



먼저 Shift + Ctrl + G 를 통해서

묶여있던 개체들을 풀어주고

예쁘게 키워주면



난리났네요


각 개체별로 확장시키는 기준점이 잡혀있기 때문에

각자의 위치에서 그대로 커진 탓에

이런 일이 벌어진 것이죠



도형크기 확장시

Shift + 드래그 : 정형 유지

Ctrl + 드래그 : 기준점 유지

Shift + Ctrl + 드래그 : 기준점을 유지한 정형 유지


이런식으로는 설명이 어려우니

이번에도 교보재를 들고 와보겠습니다.



여기 작은 원이 있습니다.


도형의 크기를 키우고 싶을때는

8방향에 있는 점을 활용해서 끌어당기는만큼

커지거나 작아지게 할 수 있죠.




되는 대로 당겨봤더니

못생긴 타원이 되어버렸네요


이런 경우에 활용하기 좋은 키가

Shift와 Ctrl!



다시 작은 원으로 돌아가서

Shift를 함께 드래그 했을 때와 Ctrl을 함께 드래그 했을 때를

보도록 하겠습니다.



Shift + 드래그 : 정형 유지



원형 뿐만 아니라

모든 도형과 그림 이미지에 적용되는 방법인데

원래의 모습에서 변형되지 않고 유지한채

그대로 크기만 늘어나게 됩니다.



Ctrl + 드래그 : 기준점 유지



이번에는 Ctrl을 누른 상태로

도형 크기를 조절해보았습니다.


찌그러지기도 하고 다양하게 변화하지만

절대로 중앙 기준점에서는 움직이지 않는다는 점을 알 수 있죠



그렇다면 Shift와 Ctrl 두가지를 조합하면

기준점이 유지된 상태로 도형의 원래 모양을

유지할 수 있다는 점을 알 수 있죠!



이 외에도 다양한 단축키를 유용하게 활용하면

작업시간을 엄청나게 단축시킬 수 있지만


나머지 정보들은 천천히..

알아가보도록 하겠습니다.

반응형
반응형





안녕하세요!

문모닝입니다!


문모닝의 IT_23.데이터베이스(DB; Database)


변화하는 과학기술과

끊임없이 변화하는 시장 상황에 부합하는

IT의 트랜드를 하나하나 살펴보는

문모닝의 IT!


오늘은 우리가 웹 페이지, 응용 소프트웨어를 사용하는데 있어

항상 접하고 있지만 시각적으로 드러나지 않아

어떻게 동작하고 있는지 파악하기 힘든

데이터베이스에 대해 다뤄보려고 합니다!









Database


데이터베이스란?


말 그대로 데이터의 집합을 유지하는 것

데이터베이스라고 합니다.

기존의 파일시스템에서도 데이터를 관리하고

유지할 수는 있었지만,

데이터베이스는 파일시스템에서 다루기 힘들었던 중복을

피하여 정보를 일원화하고 처리를 효율적으로

수행하기 위해 서로 관련성을 가지며 중복이 없는

데이터의 집합을 유지할 수 있어

현재 대부분의 데이터는 파일시스템이 아닌

데이터베이스로 관리되고 있습니다.


이런 데이터베이스를 관리하는 시스템을

DBMS(DataBase Management System)이라고 합니다.


데이터베이스는 크게 아래 5가지 특징을 지닙니다.



실시간 접근성

사용자의 질의에 대하여 즉시 처리하여 응답하는 특징


계속적인 진화

삽입, 삭제, 갱신을 통하여 항상 최근의 정확한 데이터를

동적으로 유지하는 특징


동시 공유

여러 사용자가 동시에 원하는 데이터를 공유할 수 있는 특징


내용에 의한 참조

데이터를 참조할 때 투플의 주소나 위치가 아닌

사용자가 요구하는 데이터 내용에 따라 참조하는 특징


데이터 논리적 독립성

응용프로그램과 데이터베이스를 독립시킴으로써

데이터의 논리적 구조를 변경시키더라도

응용프로그램은 변경되지 않는 특징



데이터베이스의 개념과 특징을 살펴봤지만

어떻게 사용되고 어떤 방식으로 사용되는지

정확하게 이해가 안되실 겁니다.

자주 사용하는 웹 페이지 상의 기능을 예로

설명드리겠습니다.


먼저 로그인 부분을 보면

아이디 부분과 패스워드 부분을 입력하고

일치하면 로그인에 성공하게 되어있습니다.

아이디와 패스워드가 일치하는지를 판단할때

데이터베이스가 사용됩니다.


회원가입할 때 입력했던 정보들이

로그인 관련 데이터베이스에 저장됩니다.

이 후 아이디와 패스워드를 입력하고 로그인 버튼을 누르면

입력받은 정보와 기존에 데이터베이스에 있는 정보가

일치하는지를 판단해 로그인 성공여부를 반환하는 것이죠!


Login











또 웹사이트의 게시판 같은 경우에도

데이터베이스를 사용해 정보를 관리합니다.

게시물 입력창에서 입력할 정보를 기입하고

확인을 누르면 해당 정보들이 데이터베이스에 저장되고

우리가 게시판 페이지에 접속했을때

웹브라우저는 데이터베이스에 저장된

정보들을 순서에 맞게 보여주는 것이죠.


Board












이 외에도 데이터베이스는 

jdk, php 등 웹개발 언어와 연동이 쉽고

자바와 같이 응용소프트웨어 개발 언어와 연동도 쉽기 때문에

어디에서든지 사용됩니다.


또 최근 데이터마이닝, 지능형 데이터베이스 등

데이터분석과 인공지능이 이슈되면서

데이터베이스 기술 또한 이슈가 되고 있는데요

데이터를 활용한 기술의 바탕이 되는

데이터베이스!


정말 없어서는 안될 필수적인 기술이네요


반응형
반응형





안녕하세요!

문모닝입니다!


문모닝의 IT_22.각종 고지서의 스마트폰 메신저화


변화하는 과학기술과

끊임없이 변화하는 시장 상황에 부합하는

IT의 트랜드를 하나하나 살펴보는

문모닝의 IT!









혹시 지금까지 등기로 발송되어온

정부, 자치단체 및 공공기관의

고지서 및 통지서를 분실해보신 경험이 있으신가요?


분실 경험이 없으시더라도

공과금을 납부하는데 있어 납부절차가

귀찮게 느껴지신 적이 있으실 겁니다.


Post










과기정통부는 이런 분실 우려를 줄이고

공과금 납부절차를 간편화하기 위해

공공기관의 고지서 및 통지서를

카카오톡이나 라인 등 모바일 메신저로

받을 수 있게 하는 고시 개정안을 예고했습니다.


개정안은 규제심사 등의 절차를 거쳐

10월 중 시행될 예정이라고 합니다.


2012년 도입된 통지서를 등기로 받을 수 있는

전자주소로 샵메일이 존재했지만,

가입과 이용절차가 불편해

일반인들이 쉽게 이용하지 못하고

정부기관과 기업 사이에서 주로 이용되어 왔습니다.


최근 샵메일 외의 다른 모바일 메신저에서 블록체인을 이용해

샵메일 이상의 보안수준을 확보할 수 있으며,

카카오페이 등 모바일 결제 기능도

이용할 수 있다는 장점이 추가되면서

이런 결과가 나온것으로 예상됩니다.


Block Chain











보안수준을 확보하기 위한 방법으로

이용하는 블록체인에 대해 간단하게 설명해드릴게요.

블록체인은 공공 거래 장부이며 가상 화폐로 거래할 때

발생할 수 있는 해킹을 막는 기술입니다.

분산 데이터베이스의 한 형태로, 지속적으로 성장하는

데이터 기록 리스트로서 분산 노드의 운영자에 의한

임의 조작이 불가능하도록 고안되었습니다.

블록체인 기술이 확보되면서

모바일 메신저의 보안수준 또한 확보된 것이죠!


이번 개정에 맞춰 과기정통부는 하반기 발송할

자동차 정기검사 사전 안내문을 모바일 메신저로

보내기로 했습니다.

기존 연간 사전 안내문 2천만 건을 종이로

제작할 경우 45억 원이 드는데

모바일 메신저를 이용할 경우

이 비용을 아낄수 있다는 것이

과기정통부의 설명입니다.


Money



이외에도 여러가지 많은 고지서 및 통지서들이

모바일 메신저로 대체될 수 있다면

많은 비용을 절감할 수 있을 것으로 예상되는데요.

모바일 메신저 보안의 발전과

금융과의 결합으로 우리 생활의

편리성을 증진시킬 수 있는 이번 이슈와 같이

쉼없이 발전하고 있는 IT기술이

우리 삶에 어떻게 녹아들지 기대가 됩니다.


반응형
반응형



안녕하세요!

문모닝입니다!


문모닝의 IT_21.스마트폰의 개인정보 삭제



변화하는 과학기술과

끊임없이 변화하는 시장 상황에 부합하는

IT의 트랜드를 하나하나 살펴보는

문모닝의 IT!



스마트폰이 보편화 되면서

중고로 사고 파는 경우가 빈번해졌는데요.

중고로 스마트폰을 파는 경우

기존 사용자는 스마트폰 설정에 있는 초기화를

이용해 개인정보를 삭제하고 판매하게 됩니다.


그렇다면 과연, 초기화를 통해

개인정보를 완전히 삭제할 수 있을까요?


결론부터 말씀드리면 '불가능'입니다.


Privacy










스마트폰의 초기화 기능을 통해

데이터를 지웠다고 해도

스마트폰의 데이터베이스에는 상당기간

데이터가 남아 있게 됩니다.

중고 스마트폰 구매자가 나쁜 마음을 먹고

복구 시스템을 이용해 데이터베이스의

데이터를 복구하려고 하면

상당량의 데이터를 복구할 수 있습니다.


특히 일반인들이 주로 사용하는 데이터인

문자메세지, 통화기록, 지도 기록 등의 정보는

손쉽게 복구가 가능합니다.

이런 데이터들은 개인정보 유출 뿐아니라

더 나아가 범죄에 악용될 소지가 있습니다.









Ransomware



실제로 도난 또는 중고로 매매된 스마트폰을

이용해 개인정보를 빼내고 범죄에 악용하는

사례가 점차 늘어나고 있습니다.


그렇다면 영화나 드라마처럼

휴대폰을 전자레인지에 넣고 돌리거나

자석을 이용해 데이터를 지울수 있을까요?


이 또한 불가능합니다.


전자레인지를 이용해 휴대폰이 불에 타는 상황까지

진행되지 않는다면 물론 시간과 돈이 많이 들겠지만

수리와 복구를 통해 다시 데이터를 복구해 낼 수 있죠.


또한 아무리 철저히 휴대폰을 파괴해도

통신사 서버를 통한 기능을 이용한 경우

서버에 데이터가 남아 있게 됩니다.


물론 통신사 서버의 데이터는 본인 동의 없이

제공되지 않기 때문에 문제가 발생하진 않지만

어떤 경우에도 자신의 개인정보가

담긴 데이터를 완벽하게 지울수 없는 것이죠.


최근 스마트폰 사용량이 증가하고

여러 방면으로 악용될 수 있는 소프트웨어가

개발되고 보편화되기 시작하면서

개인 정보가 쉽게 유출될 수 있는 상황이 되었습니다.









Handshake



따라서


중고로 스마트폰을 사고 파는 경우

거래자의 신원을 잘 파악하는 것이 중요하고

가능한 개인정보가 담긴 기기를

거래하지 않는 방향이 좋습니다.


또한 사용자가 희망하면

데이터베이스를 완벽히 초기화 할 수 있는 등의

적절한 개인정보 보호 방안이 강구되어야겠습니다.


반응형

+ Recent posts