일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- swift문법
- 치지직
- StateObject
- 애플 디벨로퍼 아카데미
- 데이터베이스
- sqoop
- global soop
- 앱 비교 프로젝트
- Swift 기능
- Apple Developer Academy @ POSTECH
- apple developer academy 후기
- 데이터베이스 공부
- 운영체제
- 애플 아카데미 후기
- ObservedObject
- iOS 개발 오류
- 네이버 치지직
- 소프트웨어분석및설계
- 애플 디벨로퍼 아카데미 후기
- ObservableObject
- 네이버 부스트캠프
- 숭실대
- react
- SWIFT
- OS
- useReducer
- 제앱소
- 애플 디벨로퍼 아카데미 21주차 회고
- Swift 문법
- Swift 디자인패턴
- Today
- Total
목록대학 전공 공부/소프트웨어 분석 및 설계 (11)
사과하는 제라스
Functional Viewpoint는 Design for Views의 ViewPoint들 중 가장 중요한 Viewpoint다. Functional Viewpoint : 타깃 시스템의 functional view에 대한 architecture decision을 만드는 것. -> View Model들의 Corner stone임 - Input Artifacts 1) SRS 2) System Context Model 3) Skeleton Architecture - Output Artifacts 1) Architecture with Functional Components allocated 2) Design Specification of Functional Components Functional Viewpoint..
다음 4가지 순서로 배울 것임. 1) SW Architecture 소개 2) Architecture Styles - 디자인 패턴 같은 거를 배움, Reusable Design임. 3) Architecture Viewpoints 4) Architecture Design for NFR - NFR이란? quality requirement(ex. security, reliability, efficiency 등) SW Architecture? : Architecture는 그냥 Structure(구조물)이다. SW Architecture는 요소(Component), 관계(Inter-component Relationship), 원칙(아키텍쳐가 어떤 컴포넌트와 그 관계들로 구성되어져 있는지)들을 지닌 시스템의 기본 개..
Design Pattern이란? SW를 개발 시 Context에서 발생할 수 있는 Problem과 이에 대한 Solution이다. 또한, 이를 통해 성공적인 SW 구조 및 디자인을 재사용할 수 있다. Classification of Design Patterns 1) Creational Patterns : 클래스와 객체의 초기화와 설정을 함. 2) Structural Patterns : 클래스와 객체의 interface와 implementation(인터페이스를 구체화한 실행체)를 분리함. -> 여러 객체들을 집합화하는데에 쓰임. 3) Behavioral Patterns : 클래스와 객체들 간의 dynamic interaction을 다룸. Design Pattern 원칙 디자인 패턴을 개선하기 위한 3원칙이..
소프트웨어 설계에서의 SW 컴포넌트를 얘기할 거임. 크게 1. Functional Component 2. Data Component가 있음. Functional Component : 타깃 시스템에 대한 특정한 기능을 제공하는 기능적 응집 단위임. ex. 차 대여 관리 시스템에서는... - User Profiler - Inventory Manager - Reservation Manager - Rental Manager - Payment Hander Data Component : 지속적인 데이터 모음을 관리하는 응집 단위임.(기능별이 아니라...!) ex. 차 대여 관리 시스템에서는... - User Profile - Reservation - Rental - Payment -> 이처럼 Data Compone..
소프트웨어 품질(Software Quality)이란? 외부적으로는 명시적 기능 및 성능 요구사항, 문서화된 개발 표준 및 내부적으로는 전문적으로 개발된 모든 소프트웨어에 예상되는 특징에 대한 부합 정도. -> 필요 사항: 품질을 측정하는 기준. 소프트웨어 분석(Software Analysis)이란? 주어진 요구사항을 이해하고 다이어그램과 텍스트 설명을 통해 명시하는 활동 뭘 이해할 건데?? 1) 명시적인 요구사항 2) 묵시적인 요구사항 SW 분석이 중요한 이유? : 소프트웨어 설계(Software Design)란? 분석 모델을 보다 세부적으로 세분화하고 그 구현을 위한 기술적 의사 결정을 내리는 활동 뭐가 좋은 설계인데?? 1) 분석 모델과 일치하는 것. 2) 구현을 위한 필수 사항들이 명시된 것. 3)..
State Machine Diagram : 상태 혹은 상태의 변화에 대한 행위를 나타내는 다이어그램 - 주로 전체 시스템이나 서브 시스템, 객체가 타깃이 될 수 있음. - 객체 지향 개발에서는 객체가 타깃임. State - state: 일정 시간동안 타깃이 차지하는 특정 조건을 나타냄. - current state: 현재 타깃이 남아있는 state로 단 하나만이 될 수 있음.(한번에 여러 state에 위치 불가능.) Transition : 현재 state의 변화. Event에 의해서 발생함. Transition의 3요소 1) Event : Transition을 실행하기 위한 트리거.(ex. 속도 증가 버튼 클릭) 2) Guard : Transition을 실행하기 위한 Boolean 조건(ex. 현재 속도..
Behavior란? : 런타임 프로그램 실행과 같은 것으로 C의 main(), Java의 main 메소드 등을 생각하면 됨. + 추가로, 실행 흐름 ex. Sequential Flow, Parallel Flow, Control Flow, Decision, Repetition 같은 실행흐름 그럼 앞서 나왔던 Functionality와의 차이는 뭐임?? Functionality는 시스템이 무엇을 수행할 것인지에 대한 것. Behavior는 시스템이 Functionality를 어떻게 제공할 것인지에 대한 것. Activity Diagram, Sequence Diagram, State Machine Diagram, Timing Diagram 등이 Behavioral Diagram의 예시다. Sequence D..
Class : attributes와 이것들에 대한 operations들로 이뤄진 것. 클래스 다이어그램이 뭔데...? : 시간에 따라 변하지 않는 System의 정적인 면을 보여주는 대표적인 UML 구조 다이어그램. Attribute : 객체의 데이터 Property이자 데이터의 추상적인 저장소 - 표현법: 접근제어자+이름: 속성타입[배열 개수] = 초기 값 +: public visibility -: private visibility #: protected visibility ~: package visibility Operation : 클래스에서의 기능을 담당하는 메소드같은 부분. - 표현법: 접근제어자+이름(매개변수): 반환 타입 Relationship(관계) 1) Dependency(의존) : 의존 ..