IBM Lotus Notes

From Wikipedia, the free encyclopedia

Lotus Notes

IBM Lotus Notes 6.5 default Welcome Page.
Developer: IBM
Latest release: 7.0.2 / September, 2006
OS: Cross-platform
Use: collaborative software
License: Proprietary
Website: IBM Lotus Software

Lotus Notes is a client-server collaborative software and e-mail system owned by Lotus Software, of the IBM Software Group. It consists of a client software called Notes and a server, called Domino.

Contents

[edit] Features

IBM Lotus Notes 7 customized Welcome Page.
Enlarge
IBM Lotus Notes 7 customized Welcome Page.
Lotus Notes Page in Lotus Notes 6.5
Enlarge
Lotus Notes Page in Lotus Notes 6.5
Lotus Notes Release 5 client workspace
Enlarge
Lotus Notes Release 5 client workspace

The Notes client is mainly used as an email client, but also acts as an instant messaging client (for Lotus Sametime), browser, notebook, and calendar/resource reservation client, as well as a platform for interacting with collaborative applications. People who support the Notes client regard the easy interoperability of all of these roles a major advantage in multiple-application business environments. In the early days of the product, the most common applications were threaded discussions and simple contact management databases. Today Notes also provides blogs, wikis, RSS aggregators, CRM and Help Desk systems, and organizations can build a variety of custom applications for Notes using Domino Designer.

The Notes client can be used as an IMAP and POP e-mail client with non-domino mail servers, recipient addresses can be retrieved from any LDAP server, including Active Directory. The client also does web browsing although most people configure it to launch their default browser instead.

Features include group calendaring and scheduling, SMTP-based e-mail (HTML based e-mail is available to Java developers), NNTP-based news support, and automatic HTML conversion of all documents by the Domino HTTP task.

Notes instant messaging allows you to see your coworkers online and have chat sessions with them. A chat session can be with one person or multiple people (an instant meeting).

In its latest version (7), Notes provides a web services interface. Domino can be a web server for HTML files too; authentication of access to Domino databases or HTML files uses Domino's own user directory and external systems such as Microsoft's Active Directory.

A design client is available to allow rapid development of databases consisting of forms, which allow users to create documents; and views, which display selected document fields in columns.

In addition to being a "groupware" system (e-mail, calendaring, shared documents and discussions), Notes/Domino is also a platform for developing customized client-server and web applications. Its use of design constructs and code provide capabilities that facilitate the construction of "workflow" type applications (which may typically have complex approval processes and routing of data).

[edit] Data Replication

A unique feature of Notes and Domino is its replication facilities. Servers and clients can replicate database designs and data across many types of networks (including modems). This enables users to take full advantage of Notes databases while being off-line—with the client synchronizing any changes when client and server next connect. Even while off-line full security can be preserved, but only by encrypting each database to a specified Notes ID file. Prior to Notes 6, new local replicas were created without this encryption, which led some security Web sites to claim a major security back door in Notes. With Notes 6, however, new replicas are, by default, encrypted to the Notes ID that is used to create them. Replication can be scheduled, initiated manually, or initiated programmatically. Replication takes place between a client and a server (initiated by the client) or between two servers.

[edit] Security

Security is built into the product. Notes was the first widely adopted software product to use public key cryptography for client-server and server-server authentication and for encryption of data, and it remains the product with the largest installed base of PKI users. Until US laws regulating encryption were changed in 2000, Lotus was prohibited from exporting versions of Notes that supported symmetric encryption keys that were longer than 40 bits. In 1997, Lotus negotiated an agreement with the NSA that allowed export of a version that supported stronger keys with 64 bits, but 24 of the bits were encrypted with a special key and included in the message to provide a "workload reduction factor" for the NSA. The effect of this was that users of Notes outside of the US had stronger protection against private sector industrial espionage, but no additional protection against spying by the US government.[1] This implementation was not a secret - in fact it was widely announced - but with some justification many people did consider it to be a backdoor. Some governments objected to being put at a disadvantage to the NSA, and as a result Lotus continued to support the 40 bit version for export to those countries. Under current US export laws, Lotus supports only one version of the Notes PKI with 128 bit symmetric keys, 1024 bit public keys, and no workload reduction factor. The Domino server's security tools also include S/MIME, SSL 3.0 support with industry standard key sizes for HTTP and other Internet protocols, X.509 client certificates, and an integrated certificate authority.

[edit] Programming

Domino Designer 7 IDE.
Enlarge
Domino Designer 7 IDE.

Notes/Domino is a cross-platform, secure, distributed document-oriented database and messaging framework and rapid application development environment that includes pre-built applications like email, calendar, etc. This sets it apart from its major commercial competitors, such as Microsoft Exchange or Novell GroupWise, which are generally purpose-built applications for mail and calendaring that offer APIs for extensibility.

Lotus Domino databases are built using the Domino Designer client, available only for Windows. A key feature of Notes is that many replicas of the same database can exist at the same time on different servers and clients, across dissimilar platforms, and the same storage architecture is used for both client and server replicas. Originally, replication in Notes happened at document (i.e. record) level. With release of Notes 4 in 1996, replication was changed so that it now occurs at field level.

A database is an NSF (Notes Storage Facility) file, containing basic units of storage known as a "note". Every note has a UniqueID and a NoteID. The UniqueID uniquely identifies the note across all replicas within a cluster of servers, a domain of servers, or even across domains belonging to many organizations that are all hosting replicas of the same database. The NoteID, on the other hand, is unique to the note only within the context of one given replica. Each note also stores its creation and modification dates, and one or more Items.

There are several classes of notes, including design notes and document notes. Design notes, which are created and modified with the Domino Designer client, represent programmable elements, such as the GUI layout of forms for displaying and editing data, or formulas and scripts for manipulating data. Document notes, which are created and modified with the Lotus Notes client, via a web browser, via mail routing and delivery, or via programmed code, represent user data.

Document notes can have parent-child relationships, but Notes should not be considered a hierarchical database in the classic sense of IMS. Notes databases are also not relational, although there is a SQL driver that can be used with Notes, and it does have some features that can be used to develop applications that mimic relational features. There is no support for atomic transactions in Notes, and its file locking is rudimentary at best. Notes is essentially a document-based, schemaless, loosely structured database with support for rich content and powerful indexing facilities. This structure closely mimics paper-based workflows that Lotus Notes is typically used to automate.

Items represent the content of a note. Every item has a name, a type, and may optionally have some flags set. A note can have more than one item with the same name. Types include Number, Number List, Text, Text List, Date-Time, Date-Time List, and Rich Text. Flags are used for managing attributes associated with the item, such as read or write security. Items in design notes represent the programmed elements of a database. For example, the layout of an entry form is stored in the rich text Body item within a form design note. This means that the design of the database can replicate to users' desktops just like the data itself, making it extremely easy to deploy updated applications.

Items in document notes represent user-entered or computed data. An item named "Form" in a document note can be used to bind a document to a form design note, which directs the Lotus Notes client to merge the content of the document note items with the GUI information and code represented in the given form design note for display and editing purposes. The resulting loose binding of documents to design information is one of the cornerstones of the power of Lotus Notes. Traditional database developers used to working with rigidly enforced schemas, on the other hand, may consider the power of this feature to be a double-edged sword.

Notes applications development uses several programming languages. Formula and LotusScript are the two main ones. LotusScript is similar to, and may even be considered a specialized implementation of, Visual Basic, but with the addition of many powerful native classes that model the Notes environment, whereas Formula is unique to Notes but similar to Lotus 1-2-3 formula language.

Since Release 5, Java and JavaScript are also integrated into Lotus Notes. LotusScript is the primary tool in developing applications for the Notes client, as well as server-based processing. Java and JavaScript are the primary tools for developing applications for browser access, allowing browsers to emulate the functionality of the Notes client. The Notes client can now natively process Java and JavaScript code, although applications development usually requires at least some code specific to only Notes or only a browser. However, the Mac client does not support Java and the Windows client usually does not support the most recent version of Java.

As of version 6, Lotus established an XML programming interface in addition to the options already available. The Domino XML Language (DXL) provides XML representations of all data and design resources in the Notes model, allowing any XML processing tool to create and modify Notes/Domino data.

External to the Lotus Notes application, IBM provides toolkits in C, C++, and Java to connect to the Domino database and perform a wide variety of tasks. The C toolkit is the most mature and the C++ toolkit is an objectized version of the C toolkit, lacking many functions the C toolkit provides. The Java toolkit is the least mature of the three and can be used for basic application needs.**

[edit] Database

Notes databases are different from RDBMS since they are document centric, allow multi values in items (fields), don't require a schema (they use a meta schema instead), come with built in document level access control and store RichText data. However, you can map a Notes database to a relational database by tools like JDBCSql for Domino or NotesSQL.

RDBMS developers often find it difficult to conceptualise the difference. It may be useful to think of a Notes document (a 'note') as analogous to a BLOB (a Binary Large Object). The benefits of this data structure are:

  1. No need to define size of fields, or datatype — although you can if you want to;
  2. Attributes (= Notes fields) which are null, take up no space in a database;
  3. Built-in full text searching.

[edit] Use as an email client

Lotus Notes is commonly deployed as an end-user email client in larger organisations, accounting for more than 120,000,000 total users according to IBM's latest figures.

When an organization employs a Lotus Notes server, it usually means all its users use the Lotus Notes client for reading mail and for using databases. However, the Domino server also supports POP3 and IMAP mail clients, and through an extension product (DAMO - Domino Access for Microsoft Outlook) supports native access for Microsoft Outlook clients. Lotus also provides Domino Web Access, to allow the use of email and calendaring features through Internet Explorer and Firefox web browsers on Windows, Mac and Linux client platforms.

There are several spam filtering programs available, and a rules engine allowing user defined mail processing to be performed by the server.

[edit] How Notes differs from other email clients

Lotus Notes is a unique environment. It was designed to be a collaborative application platform where email was just one of numerous applications that ran in the Notes client software. The Notes client was also designed to run on multiple platforms including Windows, UNIX, Linux and Mac. These two factors have resulted in the user interface containing some differences from applications that only run on Windows. Furthermore these differences have often remained in the product to retain backward compatibility with earlier releases, in favour of conforming to Windows UI standards. Some of Notes differences include:

  • Notes requires users to select a 'New Memo' to send an email, rather than New Mail.
  • Some keystrokes that some other popular mail applications bind to commonly used features do not work in Notes. Examples are:
    • Notes uses Ctrl->M to create a new mail, whereas many other mail clients use Ctrl->N for this purpose. (However, Netscape's mail component and Mozilla Thunderbird also use Ctrl->M on a PC, or Shift->Command->M on a Macintosh).
    • Ctrl->R, to create an email reply, also does not work in Notes, which uses Ctrl->2,R for this purpose.
    • Notes uses F9 as its refresh key and F5 to log a user out without terminating the program. Some Microsoft applications (e.g., Outlook 2002, Explorer, Internet Explorer) use F5 as a refresh key, others (e.g. Outlook 2003, Word, Excel) use F9. F9's use as the refresh key in PC applications pre-dates Microsoft's choice of F5. It dates from the early 1980s, when Lotus 1-2-3 was the most popular PC application.
  • Deleting a document (or email) will delete it from every folder in which it appears, since the folders simply contain links to the same back-end document. Most other email clients only delete the email from the current folder; if the email appears in other folders it is left alone.
  • To select multiple documents in a Notes view, you have to drag your mouse next to the documents that you want to select, rather than using Shift->Click action. (NB: Lotus plans to address this in the "Hannover" release of Notes, of which more below).
  • The searching in Notes is a "phrase search", rather than the more common "or search", and Notes requires users to spell out boolean conditions in search string. As a result, users must search for ‘delete and folder’ in order to find help text that contains the phrase ‘delete a folder’. Searching for ‘delete folder’ does not yield the desired result.
  • Notes's built-in full text search engine will only find email in the currently selected folder or view; if you click search while you're in your Inbox, then that's the only place that the search will look. To the user, it can appear that Notes has lost the email, in this case, when in fact, the user is simply "not looking in the correct place". (The correct place to initiate search is the Notes mailbox's All Documents view, if you want to search the entire mailbox.)
  • The All and Sent folders exhibit some different behaviors than other folders. Namely, you cannot drag email out of them and thereby remove the email from the folders. The email can only be "copied" from them. This is because these two folders are not, in fact, folders at all: they are views. Their membership indexes are maintained according to programmed criteria rather than user interaction (as with a folder). This technical difference is not apparent to some users, and can cause confusion even for those that are experienced with the product. Notes's defenders argue that this particular "difference" does make a kind of sense, however. For example, does an email that is removed from a Sent Mail folder become an email that was never sent? And does an email that is removed from an All folder (as opposed to deleted outright) then become an email that no longer exists? And if not, where do you look for it?

Like all popular commercial software packages, Lotus Notes has its detractors as well as supporters. Critics assert that there are dedicated email clients that are simpler, more intuitive and have a lower purchase price. Proponents argue that richer capabilities and advanced programmability are available, and that purchase price is a small fraction of total cost of ownership. Many of the differences mentioned above are seen by some as weaknesses in the product, especially when the user interface is compared to Windows only applications.

Later releases of the product made some headway in addressing end-user complaints. Notes 6.5 (2003), in particular, paid some long needed attention to the e-mail client, which has traditionally been regarded as the product's Achilles heel. Features added at this time include:

  • drag and drop of folders
  • replication of unread marks between servers
  • follow-up flags
  • reply and forward indicators on emails
  • ability to edit an attachment and save the changes back to an e-mail

In terms of usability, this release went a good way towards redressing the balance with arch-rival, the Microsoft Outlook/Microsoft Exchange combination, which had incorporated many of these features for a number of years.

[edit] Criticisms

Criticisms of the product include:

  • Many end users, particularly those mainly using it for emailing, have complained that aspects of the graphical user interface are unintuitive. Some of these criticisms have been addressed in recent versions.
  • The out of office (OOO) feature was designed to limit traffic by sending the out of office messages at 2am (by default) instead of immediately after messages are received, giving the impression that it did not work. Recent releases have increased the frequency of out of office emails, which are now sent every few hours.
  • Setting up archiving for the first time was complex, and often did not create an archive file straight away (the file is created when the first email is archived). This led many users to believe it did not work.
  • Some error messages use jargon that assumes knowledge of technical details that most end-users have little reason to know.
  • Some users get confused between the "Starts with" search and the full text search features offered in the Notes UI, the former of which will only search on data that is visible in the currently sorted column of the visible folder. The product's defenders point out that Notes does, at least, have a built-in full text search feature, unlike rival, Microsoft Outlook, which relies on external plugins to provide the functionality.
  • The development environment is designed around the idea of documents and forms. As such, applications (databases) built on Lotus Notes often tend to tightly couple the applications functionality with the user interface, by mixing code in user interface elements.

[edit] History

Lotus Notes has a history spanning more than 20 years.[2] Its chief inspiration was PLATO Notes, created by David Woolley at the University of Illinois in 1973. In today's terminology, PLATO Notes was a message board, and it was the basis for an online community which thrived for more than 20 years on the PLATO system. Ray Ozzie, who in 2006 succeeded Bill Gates as Chief Software Architect at Microsoft, worked with PLATO while attending the University of Illinois in the 1970s. When PC network technology began to emerge, Ozzie made a deal with Mitch Kapor, the founder of Lotus Development Corporation, that resulted in the formation of Iris Associates in 1984 to develop products that would combine the capabilities of PCs with the collaborative tools pioneered in PLATO. The agreement put control of product development under Ozzie and Iris, and sales and marketing under Lotus. In 1994, after the release and marketplace success of Notes R3, Lotus purchased Iris. In 1995 IBM purchased Lotus.

When Lotus Notes was initially released, the name "Notes" referred to both the client and server components. In 1996, Lotus released an add-on for the Notes 4 server called "Domino". This add-on allowed Notes documents to be rendered as web pages in real time. With the release of Notes 4.5, later that year, the Domino web server was integrated into the core Notes server, which was itself renamed to "Domino". The client is still called "Notes", while the server component is now known as "Domino". However, one may frequently see the terms used interchangeably.

[edit] Versions

  • Release 1 - 1989 - The Notes client required DOS 3.1 or OS/2. The Notes server required either DOS 3.1, 4.0, or OS/2.
  • Release 1.1 - 1990
  • Release 2 - 1991
  • Release 3 - May 1993
  • Release 4 - January 1996
  • Release 4.5 - December 1996. Server renamed as "Domino", added native HTTP server, POP3 (POP) server, added Calendaring & Scheduling. Also included SMTP MTA "in the box", but not installed by default.
  • Release 4.6: added IMAP support. OS/2 and Unix client support dropped. No Mac client for this particular release.
  • Release 5 - 1999: Moved SMTP functionality from a separate MTA task to become a native ability of the mail routing task, improving performance and fidelity of internet email. Major improvements to HTTP server. Notes client had a major interface overhaul.
  • Release 5.0.8 - Added a new webmail interface, called iNotes (later changed to Domino Web Access in Release 6).
  • Release 6.0 - September 2002. Added Domino Web Access (formerly iNotes Web Access) support. Dropped OS/2 server support.
  • Release 6.5 - September 2003. Added Lotus SameTime Instant Messaging integration to the Notes client (Windows only).
  • Release 7.0 - August 2005. Added DB2 support as database storage
  • Release 7.0.1 - July 2006. Added native Linux client, with initial release certified for RHEL.
  • Release 7.0.2 - September 2006. Added blog template, rss feed support, iCal support, SAP integration and "Nomad" which allows you to take your Notes client with you on a USB device.

Current server versions available:

  • 7.0.2 for All Platforms (Windows, Linux (Red Hat & SuSE x86, and zSeries), i5OS, z/OS, Solaris 9 & 10)

Current client versions available:

  • 7.0.2 for Windows
  • 6.5.4 for Macintosh (7.0.2 in private beta since Sep 2006, final release due end of 2006)
  • Version 7.0.1 for Linux/x86 (Red Hat & SuSE initially).

Various versions of the client have been run under Wine on Linux, but with varying degrees of success and no official support. The Notes 7 client and Domino Designer 7 are known to install and runs well under version 0.9.19.[3]

Domino servers can also translate most databases into HTML for browser based users.

[edit] Future

Current event marker This article or section contains information about scheduled or expected future software.
The content may change dramatically as the software release approaches and more information becomes available.
Software Development

Since the IBM acquisition of Lotus, some industry analysts and mainstream business press writers, along with IBM competitors, have made predictions of the impending demise of Lotus Notes. One noted example of this was an article published in Forbes magazine entitled "The decline and fall of Lotus", published in April 1998. Since that time, IBM claims that the installed base of Lotus Notes has nearly tripled from an estimated 42 million seats in September 1998 to more than 125 million in 2006 [citation needed].

Current speculation about the decline of Notes is fueled by lingering market confusion emanating from IBM placing marketing emphasis on Websphere and IBM Workplace in 2003 and 2004. IBM's most recent figures, however, indicate that the product is having a sustained period of double-digit growth. While the future of any product in the technology sector cannot be predicted, IBM has made announcements that indicate that it continues to invest heavily in research and development on the Lotus Notes product line. The next major Notes release, currently code-named "Hannover" (after the location of the 22nd Deutsche Notes User Group meeting, where it was first shown to the public) will incorporate Notes into a larger Eclipse framework and include support for a Linux version. At a Deutsche Notes User Group meeting on May 15, 2006, IBM announced they would be incorporating Workplace client technology into Notes, which will in turn give Notes wide-ranging support for the OpenDocument format[4]. In addition, IBM executive Ken Bisconti has made public comments on several occasions asserting that there will be releases 8, 9 and 10 of Notes and Domino [5].

In 2005, some analysts have nevertheless concluded that Lotus is losing market share to Microsoft Exchange [6]. There is no general agreement, however, about methods of accurately calculating share in the messaging and collaboration market. Figures based on seat count may be skewed by the presence of unused seats that are counted as a result of "bundled CALs", and figures based on customer count may be skewed by difference in typical customer organization sizes. IBM has asserted that growth shown in the revenue figures for the Lotus brand, as published in their audited annual financial report, show the continuing strength of the Lotus Notes product in the market.

[edit] See also

[edit] References

  1. ^ "The Swedes discover Lotus Notes has key escrow!" The Risks Digest, Volume 19, Issue 52, 1997-12-24
  2. ^ Official history of Lotus Notes IBM DeveloperWorks Web Site
  3. ^ Support info for running Notes 7 on Wine The Official Wine Wiki
  4. ^ "IBM backs OpenDocument in Lotus Notes" Article published in May, 2006
  5. ^ "Lotus set to uphold the future of Notes" Article published in January, 2006
  6. ^ "IBM In Denial Over Lotus Notes" Article published in April 2005

[edit] External links