open standards cots open source

21
Compare & Contrast: Open Standards, COTS, Open Source, and the SOA Connection Eamonn Moriarty September 2006

Upload: zubin67

Post on 13-Jul-2015

497 views

Category:

Documents


2 download

TRANSCRIPT

Compare & Contrast: Open Standards, COTS, Open Source, and the SOA Connection

Eamonn MoriartySeptember 2006

05/06/10 © Copyright 2006 Cúram Software Limited 2

Overview

• Working Definitions– Open Standards– Open Source– Commercial Software (COTS)– Service Oriented Architecture (SOA)

• Interactions• Considerations

– Open Standards– Open Source– Commercial Software (COTS)– Service Oriented Architecture (SOA)

• Example

05/06/10 © Copyright 2006 Cúram Software Limited 3

Open Standards

05/06/10 © Copyright 2006 Cúram Software Limited 4

Open Standards

• What’s a Standard?– An agreed-upon set of guidelines for doing something– Aims to reduce the number of ways of doing something without

hurting competition

• What’s an Open Standard?– Generally accepted to be a publicly available and implementable

standard– In the software world, Open Standards support common agreements

that enable communications between programs– Good examples: HTML, HTTP, XML, SOAP, SQL– There’s no formal standard for ‘Open Standards’!

05/06/10 © Copyright 2006 Cúram Software Limited 5

Open Source Software

05/06/10 © Copyright 2006 Cúram Software Limited 6

Open Source Software

• Any software programs whose source code is made available under a copyright license for use or modification by other users or software developers– Development of Open Source software is usually developed as a

public collaboration and is made freely available– Examples: Eclipse, Apache Web Server, GNU/Apache library

software, Linux, MySQL, etc.

05/06/10 © Copyright 2006 Cúram Software Limited 7

Open Source Software

• Properties of Open Source Software:– Free Redistribution – no royalty requirement for aggregating in a

bigger solution– Source code must be distributed (or available to be)– License allows modifications and derived works– Integrity of original Source Code (patch model)– No discrimination against persons or groups– No discrimination against fields of use– Licensing rights apply to all to whom the program is distributed– License cannot be specific to a product– License cannot restrict other software– License cannot be technology-specific

05/06/10 © Copyright 2006 Cúram Software Limited 8

COTS Software

05/06/10 © Copyright 2006 Cúram Software Limited 9

COTS Software

• Commercial off-the-shelf (COTS) describes ready-made, commercially available software products– Vendor software packages which are provided at established catalog

or market prices and sold or leased to the general public

• Typical properties of COTS software:– Rich business functionality for a particular market or set of markets– Support Programs– Education Programs– Version Protection– Documentation– Ongoing R&D– Scalability– Supports multiple platforms

05/06/10 © Copyright 2006 Cúram Software Limited 10

Service Oriented Architecture

05/06/10 © Copyright 2006 Cúram Software Limited 11

Service Oriented Architecture

• Services are stateless software components which have a defined interface but are implementation-independent. – Service Providers publish interfaces

to these Services. – Service Consumers use these

interfaces to invoke the Services. – Consumers neither know nor need to

know about the location or implementation details of a Service.

• A software architecture which models the interactions between providers and consumers of Services.

• Service interfaces encode generic semantics only; they contain no implementation-specific meaning.

05/06/10 © Copyright 2006 Cúram Software Limited 12

Service Oriented Architecture

• Interesting things to note about SOA– SOA has not really been an official standard (RM just released by

OASIS)– SOA does not mandate any specific technology, but Web Services

were in the right place at the right time

– Web Services is a continually evolving technology• SOAP and XML are standards• Lots of other Web Service work ongoing, which aren’t yet

05/06/10 © Copyright 2006 Cúram Software Limited 13

Interrelations

05/06/10 © Copyright 2006 Cúram Software Limited 14

How do they all Interrelate?

• Open Standards:– May or may not be used in Open Source Software– May or may not be used in COTS Software– Are fundamental to SOA implementations (XML, SOAP)

• Open Source– May or may not use Open Standards– May be included or used in COTS implementations– May or may not be used in SOA implementations

• COTS– May use Open Standards– May use Open Source software– May be based on or support SOA

• SOA– Implementations generally based on Open Standards– May or may not use or be implemented by Open Source or COTS

05/06/10 © Copyright 2006 Cúram Software Limited 15

Considerations

05/06/10 © Copyright 2006 Cúram Software Limited 16

Open Standards Considerations

• When considering Open Standards, need to ask some questions:– How is that standard created (by committee, by one vendor?) – How is it maintained after Version 1.0? Who maintains it?– Is there a cost associated with getting or implementing the standard? – Are there restrictions on how the standard may be implemented? – Can just a part of the standard be used or extended and still claim

compliance? – Fundamentally, is it a good standard? Have implementers embraced

it? Will it be useful?

• In general Open Standards promote ease of use and reuse, promote simplification of implementation, promote communication and integration, and reduce vendor lock-in for implementers

05/06/10 © Copyright 2006 Cúram Software Limited 17

Open Source Considerations

• When considering Open Source products, also need to ask some questions:– What functionality does it provide?– How much does it cost (free as in speech, not free as in beer)?– How does Training work?– How does Support work?

• Developer Community only?– Response times– Number in the Community

• Supported via a third party?– What documentation is available?– What Open Source License covers it?– How much buy-in is there?

• Determines the community• Will affect the possibility of new functionality

• Open Source has value; however, important to be aware of the business model that supports it

05/06/10 © Copyright 2006 Cúram Software Limited 18

COTS Considerations

• When considering COTS products, there are some further questions:– Need to evaluate what functionality is needed and being provided

(now and in the future)– Need to consider whether a given COTS product is based on Open

Standards– Need to consider whether a given COTS product is based on or

provides support for SOA– Need to consider whether a given COTS product is ‘closed’

• Do you get the source code (do you need it)?• Can you modify core functionality?• How will new versions work?

• COTS products can provide rich business functionality together with the means to implement, support and maintain them

05/06/10 © Copyright 2006 Cúram Software Limited 19

SOA Considerations

• Finally, there are also some pertinent questions to ask when considering implementing an SOA:– What will the Services be?

• How many, and of what granularity?• What’s the cost of implementing everything as a Service?• Is there a COTS or Open Source solution that can help?

– What is the transition plan?– How will the system perform? Will the system perform?– How will the system deal with advances in Web Services (e.g.

Security, Transactions)?

• SOA has momentum in the industry, and offers many potential benefits (Interoperability, Scalability, Reuse, Agility)

05/06/10 © Copyright 2006 Cúram Software Limited 20

One Example

OpenStandard

OpenStandard

Open Source

Open Source

Open Source

SOA

SOA

OpenStandard

COTS

05/06/10 © Copyright 2006 Cúram Software Limited 21

Thank you