Sunday, June 18, 2006

Database principles - ACID

Atomicity - all or nothing

Consistency - only valid data will be written to the database

Isolation - transactions will not interfere with each other

Durability - any transaction committed to the database will not be lost

XML Web Services

XML web services - the buildling blocks of distributed computing on the Internet
- exposing the functionality on the web through SOAP
- describing the interfaces in a WSDL document
- registered in UDDI

SOAP (Simple Object Access Protocol)
- SOAP is a specification that defines the XML format for messages
- SOAP spec also describes how to represent program data as XML and how to use SOAP to do Remote Procedure Calls. These optional parts of the spec are used to implement RPC-style applications where a SOAP message containing a callable function, and the parameters to pass to the function, is sent from the client, and the server returns a message with the results of the executed function.
- SOAP also supports document style applications where the SOAP message is just a wrapper around an XML document.
- The last optional part of the SOAP spec defines what an HTTP message that contains a SOAP message looks like. This HTTP binding is important because HTTP is supported by almost all current OS's.

WSDL (Web Services Description Language)
- WSDL file is an XML document that describes a set of SOAP messages and how the messages are exchanged.
- WSDL specifies what a request message must contain and what the response message will look like in unambiguous notation.
- WSDL also defines where the service is available and what communications protocol is used to talk to the service.

UDDL (Universal Discovery Description and Integration)
- UDDL is the yellow pages of Web services.
- A UDDI directory entry is an XML file that describes a business and the services it offers.
- There are three parts to an entry in the UDDI directory:
-- The "white pages" describe the company offering the service: name, address, contacts, etc.
-- The "yellow pages" include industrial categories based on standard taxonomies such as the North American Industry Classification System and the Standard Industrial Classification.
-- The "green pages" describe the interface to the service in enough detail for someone to write an application to use the Web service.

-- Microsoft

UML

Unified Modeling Language (UML) is a standard language to specify, visualize, and document the artifacts of software systems.

Use Case Diagram
- A use case is a set of scenarios that describe the interaction between a actor (user or another system) and the system being modeled.
- A use case diagram displays the relationship among actors and use cases.

Class Diagram
- A Class is composed of a name, a set of attributes, and a set of operations.
- Class diagrams model class structure and contents at three different levels - classes, packages and objects.
- Class diagrams have three different perspectives - conceptual, specification, and implementation.
- Class diagrams display relationships such as containment, inheritance, associations and others.

Interaction Diagrams
- Interaction diagrams model the behavior of use cases by describing the way groups of objects interact to complete the task. The two kinds of interaction diagrams are sequence and collaboration diagrams.
- Sequence diagrams demonstrate the behavior of objects in a use case by describing the objects and the messages they pass.
- Collaboration diagrms show the relationship between objects and the order of messages passed between them.

State Diagrams
- State diagrams describe all of the possible states of an object as events occur.
- Each diagram usually represents objects of a single class and track the different states of its objects through the system.

Activity Diagrams
- Activity diagrams describe the workflow behavior of a system.
- The diagrams describe the state of activities by showing the sequence of activities performed. - Activity diagrams can show activities that are conditional or parallel.

Physical Diagrams
- There are two types of physical diagrams: deployment diagrams and component diagrams.
- Deployment diagrams show the physical relationship between hardware and software in a system.
- Component diagrams show the software components of a system and how they are related to each other. These relationships are called dependencies.
- Many times the deployment and component diagrams are combined into one physical diagram.

-- Kennesaw State University

Thursday, June 15, 2006

Negotiation Framework

Process
- how to interact and make decisions
- efficient & FAIR
- how much time to allocate
- what order to address items in
- how many meetings and purpose of each
- who should & should not participate in the negotiation
- use of a facilitator, mediator, etc
- where to meet
- how to open & close discussions
- what information to gather and share
- agree on a process before negotiating the substance

Alternatives
- how to meet interests & concerns if no agreement reached
- not the bottom line
- improve my walk-away alternatives
- reality-test or worsen their alternatives
- in general, leave out of discussion
- disclose your alternatives when it's better than they think and their offer in inferior
- disclose it as a warning, not a threat
- emphasize your preference to reach agreement
- leave the door open if choose to walk away
- discuss their alternatives when they mention it or overestimate/overstate it
- acknowledge it as a choice and ask openly how it would meet their interests better than your proposal

Interests & Concerns
- needs, wants, fears, objectives, motivations, goals
- not the positions
- common, DIFFERING or conflicting
- consider & prioritize all parties's interests
- SHARE interests before inventing options
- share your understanding of their interests & ask what's missing

Options
- possible solutions
- create value for ALL parties
- not alternatives
- trade options based on differing interests
- use benchmarks to handle conflicting interests
- negotiate a "no commitment" ground rule
- separate inventing from evaluating options
- use tentative commitments on options until you know the WHOLE package

Benchmarks
- precedents, market practices, customs, laws, professional guidelines, usual procedures, comparables
- negotiate the benchmarks
- use criteria cannot be influenced or manipulated by either party
- use it as a "sword" and a "shield"

Commitment
- oral/written agreement of what you will and will not do
- clear & OPERATIONAL
- roles, responsibilities, timelines
- what to do if things go wrong
- level of authority to make decisions
- commit on process early, substance late
- know all pieces of the deal before committing
- revisit alternatives before committing
- check for MUTUAL understanding of intentions behind deal terms
- ensure operational details are in the agreement

Communication
- verbal & non-verbal signals
- clear and two-way
- what assumptions should we test
- how to manage communication problems
- check your understanding of what you heard
- consider the medium - IN PERSON, phone, email, etc

Relationship
- maintain or improve quality of the interpersonal dynamics (trust, respect, goodwill)
- if gap exists, what are possible causes
- address relationship concerns before addressing substance
- build TRUST to help build value in the deal
- don't make inappropriate concessions on the substance to "buy" a good relationship
- don't reward "bad" behavior with concessions

--- Common Outlook Consulting Inc.

Model for the negotiator

Assumptions
- pie can be expanded
- this is not a battle
- this is a puzzle to solve together

Goal
- maximize total benefits available

Strategy
- creat value and claim fairly

Actions
- hard on problem, respectful of people
- look for joint gains

Results
- high value outcome

--- Common Outlook Consulting Inc

Sunday, June 11, 2006