SlideShare a Scribd company logo
Introduction
Sections
Key Issues in Software Development
The Process Overview
Introduction

Lecture Objectives
 본 과정에 관련된 선 지식 습득

 소프트웨어 개발의 핵심 이슈에 관한 개요
 본 과정에 사용될 소프트웨어 프로세스 개요
Introduction

Section 1.
Key Issues in Software Development
Introduction

Contents
 Background

 Component-Based Development
 Software Process
 Iterative Development

 Software Architecture
 Unified Modeling Language
 Model Driven Architecture
Introduction

Background
Introduction

Component-Based Development
 What is Software Component?
• A software component is a unit of composition with contractually specified
interfaces and explicit context dependencies only.
• It can be deployed independently and is subject to composition by third
parties

(Szyperski, Queensland University)
Introduction

Component-Based Development (cont.)
Introduction

Component-Based Development (cont.)
 Component Platforms
• Microsoft ActiveX/COM and .NET
• OMG CORBA
• Sun JavaBeans/EJB
Introduction

Software Process
Introduction

Software Process (cont.)
 Software Process
• Development Process
• Management Process
Introduction

Software Process (cont.)
Introduction

Software Process (cont.)
Introduction

Iterative Development
 반복적 개발(Iterative Development)
• 전체 개발을 여러 번의 반복으로 나눔
• 한 번의 반복이 요구사항부터 구현, 테스트까지 포함
• 소프트웨어를 점진적으로 개발
• 사용자의 피드백(Feedback)을 자주 받을 수 있음
Introduction

Iterative Development (cont.)
 Waterfall Model (conventional development)
• 요구사항부터 구현, 테스트까지 순차적으로 수행
• 위험요소의 발견 및 해결이 프로젝트 종반으로 지연
Introduction

Iterative Development (cont.)
 위험 요소(risk)를 조기에 발견하고 해결
Introduction

Iterative Development (cont.)
 변화를 쉽게 수용(Embracing Changes)
• 요구사항에서의 변화
• 일정상의 변화
• 참여인력의 변화
• 비용 및 기타 환경의 변화
Introduction

Iterative Development (cont.)
 Iteration Planning
• 높은 위험 요소를 먼저 수행
• 중요한 요구사항을 먼저 반영
• 변화를 수용
Introduction

Iterative Development (cont.)
 Iteration Planning (cont.)
Introduction

Iterative Development (cont.)
 How many iterations?
• 반복 횟수를 많이
• 위험도가 높을 수록
• 요구사항 파악이 힘들 수록
• 반복 횟수를 적게

• 경험 많은 프로젝트 일 수록 (위험도가 낮을 수록)
• 요구사항이 명확할 수록
Introduction

Software Architecture
 소프트웨어 컴포넌트와 그것들의
관계로 표현되어지는 시스템의
거시적 구조

 소프트웨어 시스템의 조직에 관
한 중대한 결정
Introduction

Software Architecture (cont.)
 Why Is Architecture Important?
• Communication Vehicle
• Early Design Decision
• Architectural Reuse
Introduction

Software Architecture (cont.)
 What Is Architectural View?
• 특정 관점(perspective)에서의 시스템에 대한 간략한 기술.
• 특정 이해관계자(stakeholder)의 의도를 반영.
• 아키텍처상 중요한 내용들만을 포함한다.
• 소프트웨어 시스템의 아키텍처는 여러 개의 아키텍처 관점(Architectural
View)들로 구성됨.
Introduction

Software Architecture (cont.)
 4+1 View Model of Architecture
Introduction

Unified Modeling Language
 UML은 소프트웨어 시스템의 산출물들을
• 시각화(Visualize),
• 명세화(Specify),
• 구축(Construct),
• 문서화(Documenting)



하기 위한 표준 언어이다.
Introduction

Unified Modeling Language (cont.)
Introduction

Unified Modeling Language (cont.)
 Structural Modeling
• Class Diagram, Component Diagram, Deployment Diagram
Introduction

Unified Modeling Language (cont.)
 Behavioral Modeling
• Use Case Diagram, Sequence Diagram, Collaboration Diagram,
Statechart Diagram, Activity Diagram
Introduction

Model Driven Architecture
 MDA (Model Driven Architecture)

 MDA는 플랫폼 기술로부터
비즈니스 혹은 애플리케이션의
로직을 분리해내기 위한 기술이다.
Introduction

Model Driven Architecture (cont.)
Introduction

Section 2.
The Process Overview
Introduction

Contents
 The Process In This Course

 The Process
•
•
•
•
•

Business Modeling
Requirements
Analysis
Architectural Design
Design

 Process Summary
 Configurations
Introduction

The Process In This Course
 Software Design Process

 Features
• An Agile Process
• From Requirements to Design
• Use-Case Driven
• Configurable for not only OOAD but also CBD
• Make the best use of UML
Introduction

The Process
Introduction

Business Modeling
Introduction

Business Modeling (cont.)
Introduction

Requirements
Introduction

Requirements (cont.)
Introduction

Analysis

Business
Modeling
(optional)

Requirements

Analysis

Architectural
Design
(optional)

Design

Test
(not cover)

Implementation
(not cover)
Introduction

Analysis (cont.)
Introduction

Architectural Design
Introduction

Architectural Design (cont.)
Introduction

Design
Introduction

Design (cont.)
Introduction

Role Summary
Introduction

Activity Summary
Introduction

Artifact Summary
Introduction

Process Configurations
Introduction

Configuration for CBD
Introduction

Lecture Summary
 현대의 소프트웨어 개발에서는 소프트웨어 프로세스, 반복
적 개발, CBD, UML, MDA 등의 핵심 이슈들이 적용되고 있
다.
 본 과정에 적용할 소프트웨어 설계 프로세스는 비즈니스 모
델링, 분석, 아키텍처 설계, 설계 단계로 구성되어 있다.

More Related Content

PPTX
StarUML NS Guide - Architectural design
PPTX
StarUML NS Guide - Design
PPTX
StarUML NS Guide - Requirements
PPTX
StarUML NS Guide - Business modeling
PPTX
StarUML NS - 1.star rail 요구사항 방법론
PDF
소프트웨어 아키텍처 문서화
PPTX
요구사항과 테스트 설계
PPTX
StarUML NS - 4.star rail 변경관리
StarUML NS Guide - Architectural design
StarUML NS Guide - Design
StarUML NS Guide - Requirements
StarUML NS Guide - Business modeling
StarUML NS - 1.star rail 요구사항 방법론
소프트웨어 아키텍처 문서화
요구사항과 테스트 설계
StarUML NS - 4.star rail 변경관리

What's hot (8)

PDF
Rfp작성가이드(발주자용)
PDF
2015 SINVAS DAY-SINVAS REQ(요구사항의 효율적 관리 방안)
PDF
Requirements Analysis & its' Faults Prevention
PPTX
StarUML NS - 2.star rail 요구사항 도출 표준
PPTX
StarUML NS Guide - Uml overview
PDF
프로젝트에서 Sw아키텍트의 역할 20140717
PDF
SW 아키텍처 분석방법
PDF
제안요청서 [Ver.0.5 2012.04.08]
Rfp작성가이드(발주자용)
2015 SINVAS DAY-SINVAS REQ(요구사항의 효율적 관리 방안)
Requirements Analysis & its' Faults Prevention
StarUML NS - 2.star rail 요구사항 도출 표준
StarUML NS Guide - Uml overview
프로젝트에서 Sw아키텍트의 역할 20140717
SW 아키텍처 분석방법
제안요청서 [Ver.0.5 2012.04.08]
Ad

Viewers also liked (20)

PPTX
Hukum Triade
PDF
6 Ways Your Brain Transforms Sound into Emotion
PPTX
Catalog UNIqueFORMS
PPT
Training CPS-consultants 24 april 2015
PPTX
2014 스마트한 교실수업
PPTX
afiya's career knowledge
PDF
BreeCS Example Report - Co2 by Contractor
PPT
Living with Others
PPT
Can We Speak in Tongues Today?
PPT
3 maart 2015 zorg&welzijn
PPT
GPN NETWORK NEDİR?
PDF
Programa de Estudio
PDF
ใบงานความสัมพันธ์
PPTX
Web 2.0 Laat je uitdagen. 12 januari 2017
PPT
Lessons from the Mount
PPT
відсотки у життті
PPTX
Maths project
PPTX
Eqpo 7 entorno de trabajo (escritorio)
PDF
Power point per.4
PPTX
Presentation1
Hukum Triade
6 Ways Your Brain Transforms Sound into Emotion
Catalog UNIqueFORMS
Training CPS-consultants 24 april 2015
2014 스마트한 교실수업
afiya's career knowledge
BreeCS Example Report - Co2 by Contractor
Living with Others
Can We Speak in Tongues Today?
3 maart 2015 zorg&welzijn
GPN NETWORK NEDİR?
Programa de Estudio
ใบงานความสัมพันธ์
Web 2.0 Laat je uitdagen. 12 januari 2017
Lessons from the Mount
відсотки у життті
Maths project
Eqpo 7 entorno de trabajo (escritorio)
Power point per.4
Presentation1
Ad

Similar to StarUML NS Guide - Introduction (20)

ODP
전달교육(분석설계모델링)
PDF
임베디드 소프트웨어 개발에 아키텍처 프랙티스 도입
PDF
소프트웨어 아키텍처
PPT
Uml 세미나
PPTX
분석과 설계
PPTX
05. 아키텍트가 알아야할 12 97가지
PDF
소프트웨어설계론
PPTX
아키텍트가 알아야 할 12/97가지
PDF
Beginning the UML - in Banking Domain (UML 교육자료)
PPTX
14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용
PDF
모바일 앱 개발을 위한 Agile 적용
PDF
프로그래밍 방식의 변천 과정
PPTX
SOSCON2015 SI이노베이션
PPT
Software Development Process - Korean
PPTX
기술적 변화를 이끌어가기
PPTX
소프트웨어 개발자 로드맵
PPTX
컴퓨터개론12
PPTX
메타웍스3 워크숍 - 개념소개 및 예제, 그리고 간단한 API문서포함
PDF
Sw 아키텍처와 sw 공학
PDF
소프트웨어 개발 세미나 소개
전달교육(분석설계모델링)
임베디드 소프트웨어 개발에 아키텍처 프랙티스 도입
소프트웨어 아키텍처
Uml 세미나
분석과 설계
05. 아키텍트가 알아야할 12 97가지
소프트웨어설계론
아키텍트가 알아야 할 12/97가지
Beginning the UML - in Banking Domain (UML 교육자료)
14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용
모바일 앱 개발을 위한 Agile 적용
프로그래밍 방식의 변천 과정
SOSCON2015 SI이노베이션
Software Development Process - Korean
기술적 변화를 이끌어가기
소프트웨어 개발자 로드맵
컴퓨터개론12
메타웍스3 워크숍 - 개념소개 및 예제, 그리고 간단한 API문서포함
Sw 아키텍처와 sw 공학
소프트웨어 개발 세미나 소개

StarUML NS Guide - Introduction