7. CLIENT RELATIONS

The key to a successful project is a good relationship between the system developer and his client. It is vitally important that a mutually trusting relationship is developed.

7.1 Contractual Agreements

The relationship between the system developer and his client should be considered a contractual in nature whether the developer is an outside contractor or an internal company resource. The terms of this contract are negotiated or consented to by common tradition. In either case, an explicit statement of the terms should be prepared within the control documents. Oral and implicit agreements are often the source of misunderstandings and should be avoided.

7.1.1 Deliverables and Timing

Specifying what will be delivered to the client and timing must be clarified explicitly. These include deadlines for control documents, proposals and progress reports as well as the finished system with documentation. Conditions for these deadlines including resource requirements should be included.

7.1.2 Resource Requirement and Commitment

Resources that may be needed to complete each phase of the project need to be clarified. These include not only equipment and software that may be necessary, but access to the clients' personnel for assistance. The latter is particularly important since clients often underestimate the need for their personnel's involvement in the development of the system.

The willingness of the client to allocate internal resources is a good measure of his commitment to the project. A weak commitment to the development and use of a system due to either inherent difficulties or uncertainties or organizational resistance can produce severe problems in systems development.

7.1.3 Confidentiality

If the disclosure of any confidential or proprietary information is involved in the development of the system, some type of confidentiality agreement should be negotiated. This includes both the information of the client and the supplier. These conditions include both prior information and the results of the work done. Confidentiality agreements may be written specifically to protect the client's information, as in the following example, or to cover both the developer's as well as the client's information. A typical confidentiality agreement may include the following statements referring to the system's developer as the "Consultant" and the client as the "Company":

For a period of five (5) years following the date of each disclosure or development, the consultant shall maintain such information confidential, except:

information which is or becomes known publicly through no fault of the Consultant,

information learned by the Consultant from a third party entitled to disclose it, or

information already known to the Consultant before receipt from or development for the company, as shown by the Consultant's prior written records.

The Consultant agrees that with respect to the work and the results of the work performed hereunder, the Consultant will not disclose to others without the Company's written consent any unpublished information concerning the Company's business and exploratory activities and interests with which it becomes familiar in its contacts with the Company.

The Consultant shall not, without prior written permission from the Company, furnish to any third party any equipment, materials or information in tangible form, embodying or made by use of any information received or developed hereunder or use such information for purposes other than in connection with the prescribed projects so long as such information must be maintained confidential.

No confidential information in tangible form, received or developed hereunder, shall be set to the Company at the Company's request.

The Consultant shall not disclose confidential information received or developed hereunder nor assign work hereunder to anyone other than the Consultant's employees who have agreed in writing to maintain the information confidential and to use such information on in connection with the prescribed projects.

The relationship as described above between the Consultant and the Company will terminate in five (5) years from the date of the Consultant's acceptance of this agreement or may be terminated earlier by either party upon thirty (30) days' written notice to the other. Termination of this agreement shall not relieve the Consultant of any obligation with respect to information disclosed or developed hereunder prior to termination.

7.1.4 Ownership

The nature of the ownership of the resulting systems and parts of the system needs to be spelled out. The client may merely license the resulting software or have complete ownership of the software with all copyrights and patents. In some cases, the conditions may extend to all "ideas and improvements that the Consultant conceives or makes arising from activities on the project".

For most application development projects, which result in customized software for a specific user, commercial value other than for the client is minimal. Under these conditions, complete ownership is usually given to the client.

7.1.5 Payment

Payment to the developer is usually in two forms: (1) on a "per diem" or time basis (as in the case of a company employee) or (2) a project estimate. If the project is charged as a firm project estimate, scheduled payments may be used, including prepayments. Usually, prepayments are designed to cover "out-of-pocket" costs, including computer time costs, payment of specialists, and travel expenses.

7.2 Interviewing

Information on the client situation and his requirements are obtained through interviews. These involve sitting down with the client's personnel, usually on a one-on-one basis, to discuss the project and how the resulting system should fit into the client's organization.

The impression that the client will have of the developer will mainly come from these interviews. It is vital that they are conducted in a professional manner.

7.2.1 Preparing

Interviews should be fully prepared. You should know what information you are seeking and how to obtain it. This is particularly critical if group meetings will be held. These meetings will tie up a number of people that are critical to the client.

7.2.1.1 Agenda

The purpose of the interview or meeting should be explicit. A written agenda is very helpful to clarify why the meeting is taking place and who should be there. The agenda should be sent to the principal client sufficiently early for him to decide who should be interviewed. The written agenda should be available to the attendees of the interview or meeting.

7.2.1.2 Outline

An outline of the questions and topics to be discussed should be prepared and may be referred to during the session. However, it should not be used as an agenda. Other important topics may arise during the session. These should be pursued when appropriate.

Usually, all the topics and questions can be covered in a more efficient fashion if the natural flow is maintained. Therefore, follow the natural flow of the session even if it does not follow the prepared outline. The flow of the session should reflect the natural thought processes of the clients not necessarily that of an analyst. The selection of the order of topics may reveal their importance to the client.

7.2.2 Don't Waste Time

The client's time is valuable to him and his organization. Act professionally and efficiently. Clients tend to be very sensitive to wasting time.

7.2.2.1 Be On-time

Be on time for the sessions. A few minutes early won't hurt, a few minutes late might.

7.2.2.2 Minimize non-business discussions

Some "small" talk is useful to introduce the participants and to gain a common basis of interchange. However, this should not be a major portion of the session. 5 to 10 minutes maximum for a one-on-one interview or 10 to 15 minutes maximum for a group meeting should be devoted to this type of conversation.

Beware of becoming sidetracked into non-business issues during the session.

7.2.2.3 End-Quickly

Do not delay closing the session. A good indication of the effectively terminated session is the continued discussion of the topic as the participants leave.

7.2.3 Listening Well

Most sessions are intended to collect information and opinions from your client. As such, most of the time should be devoted to listening to the participants.

7.2.3.1 Do Not Disagree with the Participants

During the session, do not disagree personally with the participants. You may refer to other opinions for comment, carefully. But do not get into an argument with the participants. They are there to provide information but not to defend themselves.

7.2.3.2 The Ways of Things

There are multiple views of the way things are within an organization. In this regard, there may be multiple "truths". Each view may be correct within its own context. Therefore, it is useful to explore organizational structure, system objectives, and specifications from several individuals.

7.2.3.3 Requesting Opinions

Individual opinions, ideas, suggestions, and recommendations belong to those individuals. People have their egos associated with their opinions and ideas. Accept them as opinions and ideas but not necessary as truth. They should be respected. Be careful not to attack them.

7.2.3.4 Take Notes

Notes should be taken when appropriate during the session and always after the completion of the session. However, taking notes during the session may become distracting to the flow of the interview. If this is the case, it is even more important to take notes after the session. Include in your notes, impressions of the participants as well as their specific comments. It is acceptable to request the use of office space immediately after sessions to record notes.

7.2.3.5 Recording the Session

Recording initial interviews is not recommended. If you want to record interviews, the topic should be discussed and approved with both the client and the participants. Generally, recording is not done for these types of interviews.

7.2.3.6 Building Credibility

It is very difficult to build credibility by verbally displaying what you know. In general, clients and participants will assume "that you know your stuff". For the most part, they will assume that you know more than you do.

In addition, most clients will assume that you are not familiar with their business or industry. There is generally, no loss in credibility and usually a gain, by acknowledging this lack of information and requesting it of the clients. Nothing builds credibility like the expression of trust in the clients for what he does and knows.

7.2.4 Summary and Follow-up

Send summaries of the sessions to the client and where appropriate to the participants of the sessions. This confirms the use of the sessions and verifies that it was not "a waste of time".