This presentation explains what IT technologies, architectures and features should be employed to develop a successful SaaS service. It then explains key strategic management factors that enable the SaaS business to be desirable, feasible and viable. These strategic management factors are shown to be deeply related to the essential technologies, architectures and features addressed hereinbefore. The last chapter shows a recommendable process of engineering a SaaS which is based on the Value-Obsessed Lean Framework (VOLF) (https://www.jp-institute-of-software.com/439889682), and a traceable network of work products to be produced in that process.
6. Cloud-Native Application
1) IaaS + PaaS 환경에서 개발, 운영되는 애플리케이션으로서
2) 서비스 지향 아키텍처(Service-Oriented Architecture: SOA)로 구축돼,
서비스 간에 API를 통해서만 연계되고,
3) Deploy, Operate, Monitor, Configure 등의 인프라 배정, 운영, 관리를
자동화함, 즉 Infrastructure Automation을 적용함.
5/22/2020 GSIP 6
Cloud Native Computing Foundation, CNCF Cloud Native Definition v1.0, 2018.
(https://github.com/cncf/toc/blob/master/DEFINITION.md)
7. 1) 왜 IaaS+PaaS?
5/22/2020 GSIP 7
• IaaS+PaaS 단계가 가장 성숙된 클라우드로,
Cloud-Native App 개발/운영을 전면 지원함.
—SOA Service의 Container 구현 및 Orchestration,
Infra 자동화를 통한 CD 및 DevOps를 지원.
8. 2) 왜 SOA가 필수인가?
• Monolithic Application을 여러 개의 독립성이 강한 SOA서비스로 분리
(Macroservice, Miniservice, Microservice, Nanoservice 중 선택)
• 서비스 단위의 변경이 가능하여, 릴리즈 사이클이 단축됨.
• 즉 Design Thinking, Lean Startup, 애자일 개발, XP 등 시장적응적,
반복점증적 개발 방식이 가능해짐.
• 추가로, REST, SOAP 등 국제표준 API 기술로 인한 상호호환성 및
기술다양성 제고,
• 서비스 재사용을 통한 개발 생산성 및 속도 향상
5/22/2020 GSIP 8
9. 3) 왜 인프라 자동화가 중요한가?
• 글로벌 일류 IaaS + PaaS
서비스를 쓰면 인프라 배정,
운영, 관리를 자동화할 수
있음.
• 인프라 자동화는 CI + CD를
가능하게 하여, 릴리즈
사이클을 단축시킴.
5/22/2020 GSIP 9
Amazon microservice architecture includes lots of
microservices (which were never called “microservices” in
Amazon) connected only through APIs over HTTP.
50 million microservices are deployed per year, one every
0.63 seconds. They get lots of monitoring about their
infrastructure, SLA, log analytics, build metrics, etc.
A DevOps unit (such as Amazon.com, Amazon Prime)
consists of many 2-pizza teams. No microservice should be
bigger than what a 2-pizza team can run. Teams control
their own destiny (product planning, Dev, Ops, and QA).
Chris Munns, I Love APIs 2015: Microservices at Amazon, 2015.
(https://www.slideshare.net/apigee/i-love-apis-2015-microservices-at-amazon-54487258)
11. SaaS 정의
SaaS는 Cloud-Native Application으로서,
4) 애플리케이션의 Single Instance를 여러 고객이 공유하되
Multitenancy가 보장되고,
5) 고객이 Self-Service로 가입, 사용할 수 있다.
5/22/2020 GSIP 11
National Institute of Standards and Technology, The NIST Definition of Cloud Computing, 2011.
(https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-145.pdf)
12. 4) 왜 Multitenancy가 필수인가?
• Single Codebase + Single
Instance로 원가 저감
• Sell a black box without
customization.
• Or allow self-service, mass
customization via
metaprogramming, APIs, plus
metadata-based customization
if necessary.
5/22/2020 GSIP 12
13. 4) 왜 Multitenancy가 필수인가?
• Metadata-based customization의 효과
5/22/2020 GSIP 13
Dzone, Why Multi-Tenant Application Architecture Matters , 2017. (https://dzone.com/articles/why-multi-tenant-application-architecture-matters)
Salesforce.com (2013):
16 production instances
30+ major upgrades/year
70,000 customers
18,800,000 customer
customizations
100M API calls/day
800+ partner applications
A multitenant application (as
compared to a single-tenant)
can reduce a SaaS provider’s
cost of goods sold (COGS)
from 40 % to less than 10 %
since the cost of on-boarding
a new customer approaches
to zero, and upgrading is
done on a single instance of
the application.
14. 5) 왜 Self-Service가 필수인가?
• 가입자가 늘어남에 따른 인건비 증가를
막음.
• Self-Service를 제공하려면 서비스
운영 프로세스를 자동화해야 함.
• 예컨대 IaaS 경우, 데이터센터 인프라
운영의 자동화가 필요함. ITIL 기반의
가상화 또는 컨테이너 기반의 인프라
운영, 관리 자동화
5/22/2020 GSIP 14
15. IaaS 벤더 선정기준
1) IaaS + PaaS 수준의 벤더인가?
2) SOA 서비스 단위로 Container에 실어
오케스트레이션 가능한가?
3) Infra 자동화 기반의 CI/CD가 가능한가?
4) Multitenancy를 지원하는가?
5/22/2020 GSIP 15
Amazon Web Services, SaaS Storage Strategies: Building a
Multitenant Storage Model on AWS, 2016.
(https://d0.awsstatic.com/whitepapers/Multi_Tenant_SaaS_
Storage_Strategies.pdf)
16. IaaS 벤더 선정기준
5) Self-Service 구현을 위한 다양한 Cloud Management Platform(CMP:
OSS/BSS)들이 연동되어 있는가?
5/22/2020 GSIP 16
18. 디지털 비즈니스 모델
1) 최종수요자를 가입자로
확보
2) 공급자 간의 플랫폼 기반
에코시스템 구축
3) 온라인 서비스 운영 자동화
4) 최신 SMACI 기술 역량
확보
5/22/2020 GSIP 18
Peter Weill and Stephanie Woerner, What's Your Digital Business Model?: Six Questions to Help You Build the Next-Generation Enterprise,
2018. (https://cisr.mit.edu/research/research-overview/classic-topics/digital-business-models/)
19. 1) 가입자 확보
• Design Thinking, Lean
Startup 프로세스를 통한
차별적 가치명제가 확실한
Customer Experience (CX)
창출
5/22/2020 GSIP 19
Tim Brown, Change by Design: How Design Thinking Transforms Organizations and Inspires Innovation, 2009.
Eric Ries, The Lean Startup: How Today's Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses, 2011.
Gartner, Enterprise Architects Combine Design Thinking, Lean Startup and Agile to Drive Digital Innovation, 2016.
20. 1) 가입자 확보
• 이미 포화된 SaaS 글로벌 시장의
현황 이해
• GetApp, Capterra 등 SaaS
시장에서 경쟁제품 파악 및
벤치마킹
(https://www.getapp.com/, https://www.capterra.com/)
• Niche 솔루션 구상
• 빠른 릴리즈 사이클을 통한 시장
검증
5/22/2020 GSIP 20
22. 2) 플랫폼 기반 에코시스템 구축
• 플랫폼: PaaS + IaaS, CMP(OSS+BSS), Cloud Platform for AI, IoT 등 세계
일류 플랫폼 활용
• 보완(Complementary) SaaS: 많은 수평적 앱 들과의 Open API를 통한
결합으로 “Whole Product Solution” 제공
5/22/2020 GSIP 22
23. 3) 온라인 서비스 운영 자동화
• Self-service UI based on API of CMP for service catalog, service
contract, SLA, subscription, customer support, etc.
• Automated service backend operations including digital marketing,
pricing, order management, provisioning, monitoring, billing, etc.
5/22/2020 GSIP 23
Select
Customer
Segment
Validate
Value
Proposition
Select PaaS &
IaaS
Develop
Product
Reengineer
Business
Process
Get
Subscription
Provision
Service
Monitor &
Optimize
Operation
Support
Customer,
Meter & Bill
Do Web
Marketing
Setup CMP
Develop &
Release an
Upgrade
24. 4) SaaS 기술 역량 확보
• Reduce labor costs in SaaS business through
—Self -service
—Sharing a single instance via multitenancy architecture
—Infrastructure automation
—Service reuse based on SOA
• Speed up the release cycle, hence increasing subscriptions and revenues, through
—Sharing a single instance via multitenancy architecture
—Infrastructure automation
—Service reuse based on SOA
5/22/2020 GSIP 24
26. SaaS의 기술적 요건
Cloud-Native Application:
1) IaaS + PaaS
2) SOA
3) Infra Automation
추가 요건:
4) Multitenant Architecture
5) Self-Service
5/22/2020 GSIP 26
27. Business Architecture 설계
5/22/2020 GSIP 27
Persona
-
UXPressia
Customer Journey Map
-
UXPressia
Business Motivation Model
ArchiMate
Archi, Visual Paradigm
Business Architecture
ArchiMate
Archi, Visual Paradigm
Key Activities &
Resources
Business
Strategy
Business
Driver
Business Service
ArchiMate
Archi, Visual Paradigm
Customer
User
Value
Proposition
Business
Process & Object
Business
Driver
Business Process Model
Business Object Model
Value Proposition Canvas
-
Strategyzer
Business Model Canvas
-
Strategyzer
Service Architecture & APIs
28. Product Req’t Spec & Architecture Design
5/22/2020 GSIP 28
Scenarios
User
Interaction
Use Case
Atomic Task
Task I/O
Data
Entity
Classes
Ubiquitous
Language
TDD
Responsive Web UI
Business Process Model
BPMN
Bizagi, Visual Paradigm
Business Object Model
UML Class Diagram
Visual Paradigm
Use Case / User Stroy
UML Use Case Diagram
Visual Paradigm
Use Case Scenario
-
Visual Paradigm
Operations
Lifelines &
Methods
Bounded
Context
Domain Model
CRC Card, UML Class Diagram
Visual Paradigm
Service Architecture & APIs
SRC Card, SoaML
Visual Paradigm
SQL, NoSQL DB
ER Diagram, SQL, Document
MySQL, MongoDB
Semantic to
Logical Mapping
Java Code
BDD
Feature, Step Definition
Cucumber
UI Wireframe
Visual Paradigm
Sequence Diagram
UML Sequence Diagram
Visual Paradigm
Scenarios
API
Service Implementation
ORM
Skeleton Code
29. Cloud-Native App DevOps
5/22/2020 GSIP 29
Service Architecture & APIs
SRC Card, SoaML
Visual Paradigm
BDD
Feature, Step Definition
Cucumber
UI Wireframe
Visual Paradigm
Sequence Diagram
UML Sequence Diagram
Visual Paradigm Java Code
Java, JPA, JDBC, JAX,
Spring Boot
Responsive Web UI
MVVM
Vue.js
TDD
Unit Test Cases
Vue Test Utils, Postman, jUnit
API
REST API
RAML, Swagger
Service Implementation
SOA, MSA, Container
Spring Cloud, Eureka, Zuul
API Composition
Contract-First
Development
API
Specification
Service Registry,
API Gateway
Service Operation
DevOps
Cloud Foundry, Kubernetes, Istio
Service Composition
Orchestration, Choreography
Camunda, Kafka
CD
Process
Orchestration,
Event Sourcing
30. Where to Learn More?
5/22/2020 GSIP 30
June Sung Park, Essence and Art of Agile Development, 2019.
June Sung Park, JP Institute of Software, 2019. (https://www.jp-institute-of-software.com/)
31. KOSTA: SW300 유료과정 + 정부지원 무료과정
• Business Architecture
• Business Process Design
• Business Object Design
• Use Case Analysis
• Domain Modeling & Code
Generation
• Service-Oriented
Architecture & API Design
• Front-End Development
• Scrum + XP (BDD/TDD, CI)
• DevOps (PaaS+IaaS,
Container, CD, Operation &
Monitoring)
5/22/2020 GSIP 31
http://www.kosta.or.kr/sub3/sw_three_training, http://edu.kosta.or.kr/