• No results found

From an e-business revenue model to its software reference architecture

N/A
N/A
Protected

Academic year: 2021

Share "From an e-business revenue model to its software reference architecture"

Copied!
19
0
0

Loading.... (view fulltext now)

Full text

(1)

From an e-Business revenue model to

From an e-Business revenue model to

its software reference architecture

its software reference architecture

Thorsten Weber, Volker Gruhn

Chair of Applied Telematics/e-Business

(2)

Motivation

Motivation

e-Business characteristics

Information Technology

innovative business models

innovative revenue models

realization of business models in practice highly dependent

on underlaying software system

design of software architecture crucial

revenue model is fundamental part of a business model

definition

(3)

Motivation

Motivation

there are other aspects of business models, too!

but our focus!

requirements of the revenue model have to be considered in

software architectures

idea: deliver a set of software architectures for revenue

models of the e-Business

support faster and better design of business model‘s overall software

architecture

usable in many use cases

(4)

Definitions

Definitions

business models

‚A business model is defined as

the organization (or ’architecture’) of product, service and

information flows,

including a description of the various business actors and their

roles; and

a description of the potential benefits for the various business

actors; and

a description of the sources of revenues‘ (Timmers 1999)

revenue model

‚determination of sources of revenue‘ (Zerdick et.al. 1999)

origin-related

defines what to pay for

(5)

Definitions II

Definitions II

software architecture

‚a collection of computational components [...] together with a

description of the interactions between these components – the

connnectors‘

(Gerlan, Shaw 1993)

different structures represent different aspects (e.g. static, dynamic)

(Bass, Clements, Kazman 1997)

software reference architecture

a standard decomposition of a known problem into parts that

cooperatively solve the problem, mapped onto software components

(following Bass, Clements, Kazman)

(6)

Approach

Approach

1st: Identifying revenue models of the e-Business

defining appropriate classification criteria

applying the Classification Cycle

identifying types plus variations

2nd: Identifying appropriate software architectures

derivation based on instances of the Classification Cycle

(7)

Classification criteria

Classification criteria

Requirements to the classification of revenue models

should be based on non-technical descriptions

should be usable to define different types and variations

should be used to derive design decisions of software architectures

Categories in accordance with the definition of a business

model

actor-related criteria

offer-related criteria

revenue-related criteria

(8)

Classification criteria

Classification criteria

actor-related criteria

customer role

informant

buyer

seller

value integrator

customer relation

anonymous

identified

(9)

Classification criteria

Classification criteria

offer-related criteria

consistency

services

digital goods

physical goods

information

pricelevel

nano (<= 0,1 €)

micro (>0,1 to 5)

medium (>5 to 1000)

macro (>1000)

origin

self-determined or over-directed

(10)

Classification criteria

Classification criteria

revenue-related criteria

revenue-origin

direct

indirect

payment method

invoices

direct debits

credit cards

external payments

(11)

Classification criteria

Classification criteria

benefit-related

primary benefit

‚what is the customer willing to pay for?‘

additional benefit

e-Business inherent

personalization

(12)

Classified e-Business revenue models

Classified e-Business revenue models

Single Transaction

physical goods / digital goods / services

Subscription

services / digital or physical goods

Transaction fees

paid by buyer / paid by seller / paid by buyer and seller

Profiling

identified customer / anonymous customer

Provision

identified customer / anonymous customer

Advertisement

(13)

Subscription of services

Subscription of services

Consis

tency

Cus

tom

er-

rel

ati

on

C

us

to

m

e

r-ro

le

R

e

ve

n

ue

-o

rig

in

Paym

ent m

ethod

Prim

ary

ben

efit

A

d

d

it

ion

al

b

el

ef

it

Or

ig

in

Pr

ic

ele

ve

l

Sub-skription

Services

direct

buyer

self-determined

e-Business-inherent

identified

invoice,

direct debit

service

ongoing supply

of the services

micro,

medium

(14)

Derivation of software architecture

Derivation of software architecture

No algorithm!

Still creative process

But: Guideance by using the values of the Classification

Cycle

Examples:

subscription / identified user relation act as buyer / direct origin of

revenues using invoices or direct debits

influences components UserManagement, Contract and

Invoicing

user pay for ongoing supply of services on a micro-medium-level

influences UsageAccount component to register real usage

subscription of self-determined services

(15)

Software architecture: Static structure

Software architecture: Static structure

+getCustomer_id() : String +getName() : String +setName() +getLogin() : String +setLogin() +setPassword() +getLoginStatus() : Boolean +setLoginStatus() +getAddress() +getEmail() : String +setEmail()

+login(in passwort : String) : Boolean +getDebitAccount() +getContract() : Contract +getUsageAccount() : UsageAccount +endSession() : Boolean -customer_id : String -name : String -loginName : String -loginStatus : Boolean = false -email : String

Customer

+createReport(in from : Date, in to : Date) : UATransaction [0..*] +startSession(in contract : Contract) : Boolean

-saveTransferAmount() : Boolean +endSession() : Boolean UsageAccount +getTariff_id() : String +getName() : String +setName() +getDescription() : String +setDescription() +getEntityType() : EntityType +setEntityType() +getMaxEntities() : Integer +setMaxEntities() +getPeriod() : Period +setPeriod() +getBasicPrice() : float +setBasicPrice() +getAddPricePerEntity() : float -tariff_id : String -name : String -description : String -entityType : EntityType -maxEntities : Integer -claimPeriod : Period -basicPrice : float -addPricePerEntity : float Tariff +getContract_id() : String +getCustomer_id() : String +getDurationStart() : Date +setDurationStart() +getDurationEnd() : Date +setDurationEnd() +getTariff_id() : String +setTariff_id() +getContractStatus() : ContractStatus +setContractStatus() -contract_id : String -customer_id : String -durationStart : Date -durationEnd : Date -tariff : Tariff -paymentMethod : Payment -contractStatus : ContractStatus Contract

+ContractConfirmation(in customer : Customer, in tariff : Tariff) +sendContractConfirmation(in addess : String) : Boolean -contract_id : String -customer_id -durationStart : Date -durationEnd : Date -tariff_id : String -tariffName : String -entityType : EntityType -period : Period -maxEntities : Integer -basicPrice : float -addPricePerEntity : float -paymentMethod : Payment -recipient : Address ContractConfirmation +Invoice(in contract : Contract, in from : Date, in to : Date) -calcTotalTransferAmount(in transactions : UATransaction[0..*]) : float -calcTotalTime(in transactions : UATransaction[0..*]) : float +sendInvoice(in address : Address) : Boolean -calcAddFee(in transactions : UATransaction[0..*]) : float -calcTotalFee() : Boolean -invoiceNumber : String -customer_id : String -contract_id : String -from : Date -to : Date -tarifName : String -invoiceDetails : UATransaction -basicFee : float -additionalAmount : float -totalAmount : float Invoice -time_in_min -data_in_mb «enumeration» EntityType -week -month -quarteryear -halfyear -year «enumeration» Period -invoice -directDebit «enumeration» Payment getBalance() : float calcBalance()

chargeAccount(in invoiceNr, in amount) creditAccount() createReport() accountNumber : String balance : float DebitAccount -created -valid -blocked -canceled «enumeration» ContractStatus -has 1 -is part 1 -is assigned 1 -knows 0..* -has 1 -part of 1 -is created 1 1 -includes 1 -is part of 0..1 +UATransaction() +getStartTime() : Date +getEndTime() : Date +setEndTime() +getTransferAmount() : float

+setTransferAmount(in menge : float) : Boolean +getDuration() : float -startTime[1] : Date -endTime[1] : Date -transferAmount[0..1] : Integer UATransaction -contains 1 0..*

+getTariff(in tariff_id) : Tariff TariffCatalogue -manages 1 0..* 1 -is created 0..* DATransaction(in invNr, in amount)

transactionNumber : String invoiceNumber : String date : Date amount : float DATransaction -contains 1 0..*

+logoutCustomer(in kunde : Customer) : Boolean +newCustomer(in kunde : Customer) : Boolean +loginCustomer(in kennwort : String) +getCustomer(in kunden_id : String) : Customer

CustomerCatalogue Address 0..* -manages 1 -address 1 -belongs to 0..* knows knows knows knows

+getTransferedMB(in session_id : String) : float LogfileAnalyst

(16)

Software architecture: Dynamic structure

Software architecture: Dynamic structure

sd Usage logging

opt

:LogfileAnalyst

:Customer

:Contract

:UATransaction

getTariff()

:CustomerCatalogue

:Tariff

[ type = = "data_in_MB" ]

:Session

setEndTime setEndTime() endSession() logout(customer) new() status = getContractStatus() status brea k [status = = 'blocked']

:UsageAccount

message type = getEntityType() getTariff type setTransferAmount startSession endSession logout startSession(contract) :GUI ref Login saveTransferAmount() saveTransferAmount setTransferAmount(amount) setStartTime setStartTime endSession() logout session_id = getSessionID() session_id amount = getTransferedMB(session_id) amount

(17)

Validation

Validation

launch of a German Lottery portal in 2004

products can be played in a subscription mode

very specific characteristics of products

software architecture was used as a template

components had to be adapted

(18)

Further Research

Further Research

Architecture optimization

complete the set of software reference architectures for the identified

revenue models

identifying re-usable components (including variations) for different

revenue models

Evaluation

(19)

Thank you!

Thank you!

[email protected]

[email protected]

References

Related documents

Vest Performance Period Vest Performance Period Performance Level Performance Multiplier Maximum 150% Target 100% Threshold 50% Target # PSUs x Performance Multiplier

Benih jamblang baru yang ditanam dengan menggunakan pasir menunjukkan nilai-nilai daya berkecambah dan kecepatan tumbuh yang berbeda nyata dengan benih baru maupun

Deferred revenue recognition transactions may be entered into R STARS from the Revenue/Receipts Transaction Entry screen when entering the data on-line.... Recording the

In this paper we studied the effects of a community-based health insurance (CBHI) scheme on household assets in rural Burkina Faso, Africa.. Burkina Faso, is one of the

Finally, another important LT-Ag interaction in HPyV mediated tumorigenesis is that with p53, a tumor suppressing protein that regulates the gene expression in response

To control the selected media source, briefly press the function key and select a station (radio mode) or title (media mode) by pressing the selection in the pop-up window.

para las tierras valencianas es probable, por tanto, que entre la ocupación de Costamar y las fases III-IV de Pic dels Corbs, cuyo final podría- mos situar hacia finales del

a) If County Reforestation Land, by local law designating any or all County land as open for the use and operation of ATVs, subject to the rules and regulations herein set forth