Client/Server Rapid Development


This three-day seminar takes you step-by-step through the process of designing, creating, testing and modifying graphical, object-oriented, multi-tier client/server applications.

Organizations that attempt to develop large client/server applications often make a costly discovery: The tools and strategies they have used successfully to develop small, two-tier client/server applications don't work for large, distributed applications. Do large applications require a whole new tool set, or are the strategies somehow flawed?

The Client/Server Rapid Development seminar presents a new method for quickly creating scalable, multi-tier client/server systems. This method incorporates the tools and programming languages already in use, enabling organizations to expand the scope of their client/server development without a major investment in retooling and retraining. This seminar also illustrates how to apply object-oriented design techniques in a logical and easy-to-follow process that guarantees a robust, clearly traceable client/server application.
By completing this course, participants will gain:

Who will benefit?

This seminar is intended for software developers and development managers who have some experience creating simple client/server applications using visual programming tools and relational databases.

To bring Client/Server Rapid Development to your organization, or to request information about other Socrates Group seminars, call 1.800.756.9450. If none of our standard courses fits your special needs, we'll gladly create one that does.

Client/Server Rapid Development (Rapid C/S) Course Outline:


We start by examining why it has been so difficult to produce applications that can evolve quickly and easily as business needs change. We show how emerging technology has led us into the two-tier trap that most client/server developers find themselves in today.

We look at object-oriented programming and what characteristics of object-oriented development efforts have been proven to be effective.

We then outline the Rapid C/S approach:

  1. Short cycle, rapid iterations
  2. Distributed architectures
  3. Separate infrastructure projects
  4. Use case method
  5. Project management issues
  6. Rapid C/S principles


Building large, complex client/server systems without a clear architectural model is like driving through unknown lands without a map. In this module, we introduce a logical model for partitioning applications into client and server components. The model shows how the various technology components relate to each other, and clearly describes what program logic belongs in each component and how the components communicate with each other. Topics covered include:

  1. The Gartner model discounted
  2. Logical vs physical tiers
  3. The Services Model(tm)
  4. Infrastructure vs application layers
  5. Glue layers and the rule of middleware glue
  6. Fat vs thin client
  7. Where business services belong
  8. The enterprise API

The Infrastructure Project

The move to client/server has massive impact on technology infrastructures. Rapid C/S treats infrastructure enhancements as technology projects. But infrastructure is more than just technology—it also includes the skills of the people who build and use it. Topics covered include:

  1. What is infrastructure?
  2. The Three Ps of Infrastructure
  3. Selecting and integrating infrastructure products
  4. The skills curriculum
  5. The skills hierarchy
  6. Interpersonal skills
  7. Conceptual fundamentals
  8. Generic skills
  9. Product-specific skills
  10. Skills and the Services Model
  11. Creating your training plan
  12. The cost of retooling
  13. Typical training plan
  14. Enterprise training
  15. Project team training
  16. Personal Development Planner
  17. Training as an infrastructure project
  18. Standards: infrastructure, GUI, software reuse
  19. Developing standards
  20. Infrastructure: part of the life cycle
  21. Infrastructure projects
  22. Concurrent engineering

Rapid C/S Overview

In this module, we present an overview of the entire Rapid C/S process. We start with the external design cycle, which focuses on understanding the business processes, and then shift to the internal design cycle, which focuses on refining the business processes to a series of use cases. The final cycle is the implementation cycle, which translates the use cases into working user interfaces with supporting remote server processes. Topics covered in this module include:

  1. The Rapid C/S process overview
  2. Introducing the case study
  3. External analysis cycle
  4. Internal analysis cycle
  5. Use cases
  6. System view of a use case
  7. External & internal cycles related
  8. The implementation cycle

External Design Cycle

Here we show how to model the business and the processes that drive it. Techniques of business process engineering are reviewed and related to the design of software systems. We introduce an object-oriented analysis method that focuses on identifying customers, service goals, service providers, activities, and costs. The result is seamless integration between commonly used approaches to business process analysis and the software design method. Topics covered include:

  1. Analyzing the organization
  2. Identifying services
  3. The object model for services
  4. Customers and providers
  5. The contract model for services
  6. Time and cost
  7. Workflow analysis
  8. Identifying software use cases from workflow

Internal Design Cycle

We present a design cycle for software applications based on the use case, a flexible method of describing the user's interaction with the system. The use case is an essential part of object-oriented design. In the Rapid C/S approach, the use case is combined with rapid prototyping of the user interface and client/server architecture modeling, resulting in a rapid design process, a true object-oriented design, and genuine traceability from requirements through design to code. Topics include:

  1. Goals of object-oriented design
  2. Concepts of OOP
  3. Design case study
  4. Use case modeling
  5. Developing the requirements model
  6. GUI prototyping
  7. Integrating the data model
  8. Identifying objects
  9. Objects and architecture
  10. System communication model
  11. Designing object interfaces

Implementation Cycle

We complete the implementation of the application in twelve well-defined steps:

  1. Use cases as GUI entry points
  2. Fleshing out GUI navigation
  3. Defining remote processes
  4. Creating the database
  5. Creating data access servers
  6. Connecting client & server processes
  7. Completing GUI integration
  8. Stubbing business process servers
  9. Completing business integrity logic
  10. Performing system testing
  11. Installing system
  12. Continuous refinement

Each step is interspersed with lab exercises and live demonstrations.

Management & Scheduling Issues

Here we discuss project management issues, including estimation, scheduling, change & commitment control, and project team organization. The Rapid C/S method will give you speed and flexibility without sacrificing schedule and cost control. Topics include:

  1. Estimating effort and schedule
  2. Function points and use cases
  3. Tracking progress
  4. Steering: depth and breadth models
  5. Parallel implementation
  6. Translating change requests
  7. Who does what
  8. Who must talk to whom


© Copyright 1995, The Socrates Group. All Rights Reserved.