Software · 2010-03-04 · 6 Proprietary software (suletud tarkvara) proprietary – „closed“,...

Post on 12-Jul-2020

2 views 0 download

transcript

1

Software

software – the binding component

storage processorbuses/data paths

software

2

Software

ownership and usage rights

installing

updating

software library

3

Software: ownership, usage rights

➔ ownership of the copy -

all the (owners) rights for the copy transferred to the end user

copyright may remain with the publisher

➔ license to use the copy –

client is licensed to use the copy of the software, but ownership of the copy remains with the publisher

4

Free Software (vaba tarkvara)

➔ end user owns the copy➔ owning the copy ≠ owning the copyright

➔ owner's rights and liabilities➔ accepting the license grants additional rights,

user will be bounded by the terms of license➔ copyleft vs. permissive

5

Free Software

copyleft➔ aim to preserve

freedom of the software

GNU General Public License

permissive➔ aim to give more

freedom to the users

BSD License, Apache License

6

Proprietary software (suletud tarkvara)

➔ proprietary – „closed“, „commercial“➔ end user does not own the copy➔ end user is granted the right to use the copy➔ accepting the license is prerequisite of using

the software➔ no standards, vendors impose their own rules

7

Software: Cost

freeware (tasuta tarkvara)

voluntary donations

free for personal use

shareware (vabalt levitatav prooviversioon)

try & buy, trial (prooviversioon)

for charge

8

Source Openness

closed source – only vendor/publisher and their partners can access the code

shared source – user gains access to the code by signing agreement, ownership remains with vendor

open source – code accessible by everyone, end-user owns the copy

access to source does not automatically imply the rights to modify the source

9

Counting the Users

➔ license tied to one workstation - per-seat➔ tied to one user - per-user➔ installed to many locations, allowed to use N

copies concurrently - concurrent, floating (ujuv litsents)

➔ license covers whole department/company or faculty/campus – site-licence, campus licence

➔ license tied to particular hardware – OEM

10

License Duration

➔ „forever“➔ annual fee (rent)➔ software support/maintenance/assurance

11

License Server

➔ keeps track of floating / concurrent licenses ➔ upon starting, application performs a check-

out of the license➔ when the application is closed, a check-in is

performed➔ no more free licenses to check out?

➔ application does not start, ➔ ..or starts for a limited period of time..➔ ..or starts with a limited functionality

12

Physical Tokens

➔ also known as dongles➔ a piece of hardware that enables the use of some

software application➔ usually an USB device➔ sometimes used with license servers

13

Installing Software

➔ only install what you own or are licensed to use

➔ temporary and trial installations➔ must be clearly distinguished➔ must not be used to do “real work”

➔ software install rights➔ person with install rights must understand the

concepts of software licensing

14

Installing Software

➔ mass installations➔ the only real way to mass install is to automate

➔ identical installations: identical problems

➔ try to parallelize for faster install times➔ applications/systems that were identically

installed tend to develop differences over time ➔ life-time management should be identical, too➔ you may benefit from “checkpoints”

15

Packaging

managing large quantities of software installations will get complicated

this can be mitigated by software packages

16

Activity II

17

Evolution of Packaging

➔ source code (or binary code) with half-automated install

tarball (incl Makefile), .jar

➔ install packages (incl removal functions, basic dependencies)

.exe install packages in Windows

18

Evolution of Packaging

➔ standard package formats with tools to manage them (removal, audit, dependencies, single package manager)

RedHat Package Management (rpm), Debian Package Format (deb), Solaris Package (pkg), Windows

Installer (msi)

➔ software repository systems (dependency resolving, central updates, single toolset)

APT, Yum, YAST2/Zypp,CPAN, PEAR

19

Software Repository

➔ set of published software (available over Internet)

➔ has structure, meta-info➔ compatible with some software management

application➔ complex aspects of dependency, version,

update management are kept hidden from the end user

➔ one system can be connected to many repositories, single tool for management

20

Repository Examples

➔ install repository for the OS➔ drivers from hardware vendors

➔ N: nVidia, ATI, Intel graafikadraiverid

➔ applications from third-party➔ N: Packman, rpmforge, EPEL, Blastwave

➔ for-charge and proprietary software➔ N: NightStar LX, Eucalyptus

➔ repository for SW development libraries➔ N: CPAN, PEAR, CRAN

21

Tarkvara pakendamine

Vendor 2 Vendor 3

Vendor 1OS (distro) ver 1

x86_64

i386

OS (distro) ver 2

x86_64

i386

Updates

1

x86_64

i3862

x86_64

i386

Driver A + upg

x86_64

i386

Application B OS 1 + upg

x86_64

i386

Application B OS v2 + upg

x86_64

i386

Client 1

Client 2

22

Software Updates

➔ upgrade versions are usually cheaper than full versions➔ functionality updates

➔ security updates – should be free➔ bug fixes – usually free➔ software “lifetime” – for how long is the

software version supported?

23

Software Updates

➔ security updates➔ security updates must be (semi)automated!➔ ideal model:

1.security update gets published

2.adminstrators test the update – in (semi)automated way

3.if the update passes testing, it will be delivered to all the systems needing the update via automated infrastructure

24

Software Updates

➔ version updates (upgrades)➔ major upgrades need planning➔ too quick upgrades will have a negative impact➔ learn from the experience of other companies

➔ if possible, the upgrade should be simultaneous over the company➔ new and old version may not be fully compatible

25

License Store

➔ repository of license tokens (agreements, license files, ..)

➔ with every token, list of existing installations is kept

➔ each new installation should begin with registering itself in the license store

26

Software Library

➔ ITIL: Definitive Software Library➔ structured library of software:

➔ installation packages of licensed software➔ different versions (for testing, in use, archive)➔ “install keys” can be either kept in software

library or license store