Client-Server-Computing.Pdf

Total Page:16

File Type:pdf, Size:1020Kb

Client-Server-Computing.Pdf This page intentionally left blank Copyright © 2009, New Age International (P) Ltd., Publishers Published by New Age International (P) Ltd., Publishers All rights reserved. No part of this ebook may be reproduced in any form, by photostat, microfilm, xerography, or any other means, or incorporated into any information retrieval system, electronic or mechanical, without the written permission of the publisher. All inquiries should be emailed to [email protected] ISBN (13) : 978-81-224-2861-2 PUBLISHING FOR ONE WORLD NEW AGE INTERNATIONAL (P) LIMITED, PUBLISHERS 4835/24, Ansari Road, Daryaganj, New Delhi - 110002 Visit us at www.newagepublishers.com Preface In recent years there have been significant advances in the development of high performance personal computer and networks. There is now an identifiable trend in industry toward downsizing that is replacing expensive mainframe computers with more cost-effective networks of personal computer that achieve the same or even better results. This trend has given rise to the architecture of the Client/Server Computing. The term Client/Server was first used in the 1980s in reference to personal computers on a network. The actual Client/Server model started gaining acceptance in the late 1980s. The term Client/Server is used to describe a computing model for the development of computerized systems. This model is based on the distribution of functions between two types of independent and autonomous entities: Server and Client. A Client is any process that request specific services from server processes. A Server is process that provides requested services for Clients. Or in other words, we can say “A client is defined as a requester of services and a server is defined as the provider of services.” A single machine can be both a client and a server depending on the software configuration. Client and Server processes can reside in same computer or in different computers linked by a network. In general, Client/Server is a system. It is not just hardware or software. It is not necessarily a program that comes in a box to be installed onto your computer’s hard drive. Client/Server is a conglomeration of computer equipment, infrastructure, and software programs working together to accomplish computing tasks which enable their users to be more efficient and productive. Client/Server applications can be distinguished by the nature of the service or type of solutions they provide. Client/Server Computing is new technology that yields solutions to many data management problems faced by modern organizations. Client/Server Computing: An Introduction, features objective evaluations and details of Client/Server development tools, used operating system, database management system and its mechanism in respect of Client/Server computing and network components used in order to build effective Client/Server applications. vi Preface Last but not the least, this work is primarily a joint work with a number of fellow teacher who have worked with us. My parents, wife Meera, and our children, Akanksha and Harsh. I am particularly grateful to Dr. A. P. Singh, Principal, Udai Pratap Inter College, Varanasi; Dr. D. S. Yadav, Sr. Lecturer, Department of Computer Science and Engineering, IET, Lucknow; Dr. A. K. Naiyak, Director IIBM, Patna, former President of IT and Computer Science Section of Indian Science Congress Association; Prof. A. K. Agrawal, Professor and Ex-Head of Department, Computer Science and Engineering IT, BHU, Varanasi and Mr. Manish Kumar Singh, Sr. Lecturer, Rajarshi School of Management and Technology for providing the necessary help to finish this work. Suggestions and comments about the book are most welcome and can be sent by e-mail to [email protected]. Subhash Chandra Yadav Contents Preface v 1 INTRODUCTION 1–23 1.1 What is Client/Server Computing? 1 1.1.1 A Server for Every Client 2 1.1.2 Client/Server: Fat or Thin 4 1.1.3 Client/Server: Stateless or Stateful 4 1.1.4 Servers and Mainframes 5 1.1.5 Client/Server Functions 7 1.1.6 Client/Server Topologies 7 1.1.7 Integration with Distributed Computing 8 1.1.8 Alternatives to Client/Server Systems 9 1.2 Classification of Client/Server Systems 9 1.2.1 Two-tier Client/Server Model 9 1.2.2 Three-tier Client/Server Model 12 1.2.2.1 Transaction Processing Monitors 15 1.2.2.2 Three-tier with Message Server 16 1.2.2.3 Three-tier with an Application Server 17 1.2.2.4 Three-tier with an ORB Architecture 17 1.2.2.5 Three-tier Architecture and Internet 17 1.2.3 N-tier Client/Server Model 18 1.3 Clients/Server— Advantages and Disadvantages 19 1.3.1 Advantages 19 1.3.2 Disadvantages 21 1.4 Misconceptions About Client/Server Computing 22 Exercise 1 23 viii Contents 2 DRIVING FORCES BEHIND CLIENT/SERVER COMPUTING 25–40 2.1 Introduction 25 2.2 Driving Forces 26 2.2.1 Business Perspective 26 2.2.2 Technology Perspective 28 2.3 Development of Client/Server Systems 29 2.3.1 Development Tools 30 2.3.2 Development Phases 30 2.4 Client/Server Standards 32 2.5 Client/Server Security 33 2.5.1 Emerging Client /Server Security Threats 33 2.5.2 Threats to Server 34 2.6 Organizational Expectations 34 2.7 Improving Performance of Client/Server Applications 36 2.8 Single System Image 37 2.9 Downsizing and Rightsizing 38 2.10 Client/Server Methodology 39 Exercise 2 40 3 ARCHITECTURES OF CLIENT/SERVER SYSTEMS 41–62 3.1 Introduction 41 3.2 Components 42 3.2.1 Interaction between the Components 43 3.2.2 Complex Client/Server Interactions 43 3.3 Principles behind Client/Server Systems 45 3.4 Client Components 46 3.5 Server Components 48 3.5.1 The Complexity of Servers 51 3.6 Communications Middleware Components 52 3.7 Architecture for Business Information System 55 3.7.1 Introduction 55 3.7.2 Three-Layer Architecture 56 3.7.3 General Forces 56 3.7.4 Distribution Pattern 58 3.8 Existing Client/Server Architecture 59 3.8.1 Mainframe-based Environment 59 3.8.2 LAN-based Environment 60 3.8.3 Internet-based Environment 60 Exercise 3 62 Contents ix 4 CLIENT/SERVER AND DATABASES 63–78 4.1 Introduction 63 4.2 Client/Server in Respect of Databases 64 4.2.1 Client/Server Databases 64 4.2.2 Client/Server Database Computing 65 4.3 Client/Server Database Architecture 66 4.4 Database Middleware Component 70 4.5 Access to Multiple Databases 71 4.6 Distributed Client/Server Database Systems 72 4.7 Distributed DBMS 74 4.8 Web/database System for Client/Server Applications 76 4.8.1 Web/database Vs Traditional Database 77 Exercise 4 78 5 CLIENT/SERVER APPLICATION COMPONENTS 79–104 5.1 Introduction 79 5.2 Technologies for Client/Server Application 79 5.3 Service of a Client/Server Application 80 5.4 Categories of Client/Server Applications 84 5.5 Client Services 85 5.5.1 Inter Process Communication 87 5.5.2 Remote Services 91 5.5.3 Window Services 92 5.5.4 Dynamic Data Exchange (DDE) 92 5.5.5 Object Linking and Embedding (OLE) 93 5.5.6 Common Object Request Broker Architecture (CORBA) 94 5.5.7 Print/Fax Services 95 5.5.8 Database Services 95 5.6 Server Services 96 5.7 Client/Server Application: Connectivity 100 5.7.1 Role and Mechanism of Middleware 101 5.8 Client/Server Application: Layered Architecture 102 5.8.1 Design Approach 102 5.8.2 Interface in Three Layers 103 Exercise 5 104 x Contents 6 SYSTEM DEVELOPMENT 105–138 6.1 Hardware Requirements 105 6.1.1 PC Level Processing Units 105 6.1.2 Storage Devices 110 6.1.3 Network Protection Devices 115 6.1.4 Surge Protectors 117 6.1.5 RAID Technology 120 6.1.6 Server Specific Jargon 122 6.2 Software Requirements 124 6.2.1 Client OS 124 6.2.2 Server OS 124 6.2.3 Network OS 128 6.3 Communication Interface Technology 131 6.3.1 Network Interface Card 131 6.3.2 LAN Cabling 132 6.3.3 WAN 132 6.3.4 ATM 133 6.3.5 Ethernet 133 6.3.6 Token Ring 134 6.3.7 FDDI 135 6.3.8 TCP/IP 135 6.3.9 SNMP 135 6.3.10 NFS 136 6.3.11 SMTP 136 Exercise 6 137 7 TRAINING AND TESTING 139–156 7.1 Introduction 139 7.2 Technology Behind Training Delivery 140 7.2.1 Traditional Classroom 140 7.2.2 On-the-Job Training (OTJ) 141 7.2.3 Video Conferencing 141 7.2.4 Collaborative Tools 141 7.2.5 Virtual Groups and Event Calls 142 7.2.6 E-Learning 142 7.2.7 Web-based Training 142 7.2.8 Learning Management Systems (LMS) 143 7.2.9 Electronic Performance Support Systems (EPSS) 143 Contents xi 7.3 To Whom Training is Required? 143 7.3.1 System Administrator Training 143 7.3.2 DBA Training 144 7.3.3 Network Administrator Training 145 7.3.4 End-User and Technical Staff Training 146 7.3.5 GUI Applications Training 146 7.3.6 LAN/WAN Administration and Training Issues 148 7.4 Impact of Technology on Training 149 7.4.1 Client/Server Administration and Management 150 7.5 Client/Server Testing Technology 150 7.5.1 Client/Server Software 150 7.5.2 Client/Server Testing Techniques 151 7.5.3 Testing Aspects 152 7.5.4 Measures of Completeness 153 7.6 Testing Client/Server Application 153 Exercise 7 156 8 CLIENT/SERVER TECHNOLOGY AND WEB SERVICES 157–172 8.1 Introduction 157 8.2 What are Web Services? 158 8.2.1 Web Services History 158 8.2.2 Web Server Technology 158 8.2.3 Web Server 162 8.2.4 Web Server Communication 163 8.3 Role of Java for Client/Server on Web 164 8.4 Web Services and Client/Server/Browser – Server Technology 167 8.5 Client/Server Technology and Web Applications 168 8.6 Balanced Computing and the Server’s Changing Role 171 Exercise 8 172 9 FUTURE OF THE CLIENT/SERVER COMPUTING 173–193 9.1 Introduction 173 9.2 Technology of the Next Generation 173 9.2.1 Networking 174 9.2.2 Development Tools 174 9.2.3 Processors and Servers 177 9.2.4 Paradigms 178 xii Contents 9.3 Enabling
Recommended publications
  • Key Features in Windows Server 2008 R2 and Windows Server
    With Windows Server® 2008 R2 Remote Desktop Services (RDS), Microsoft is progressing in its vision to provide the best virtualization platform for accelerating and extending desktop and application deployments from the data center to any device. In addition to the traditional session virtualization scenario (formerly known as “Terminal Services”), Remote Desktop Services is expanding its role to provide an extensible platform for a Virtual Desktop Infrastructure (VDI). RDS is a cost-effective infrastructure platform for any type of organization, particularly those with a roaming workforce, structured task workers or knowledge workers with a need for flexible desktop or application access, including contractors, offshore workers and office workers that require a free seating environment or have a need to work from home. SOLUTION BENEFITS ACCELERATE DESKTOP & APPLICATION HELP SECURE DATA AND INCREASE REMOTE WORKER DEPLOYMENT APPLICATIONS EFFICIENCY Remote Desktop Services accelerates and Remote Desktop Services helps Remote Desktop Services helps extends the deployment of desktops and organizations keep critical simplify remote connectivity, applications to a wide array of client devices, intellectual property highly secure enabling rich applications to be helping make your organization more agile and helps radically simplify accessed from a web page and and responsive. RDS also enables flexible regulatory compliance by removing seamlessly integrated with a local work scenarios such as hot-desking and work applications and data from the desktop, improving remote worker from home. desktop. efficiency. Key Features in Windows Server 2008 R2 and Windows Server 2008 R2 Service Pack 1: • Microsoft RemoteFX introduces a new set of end user experience capabilities, enabling local-like access to media-rich applications for virtual and session-based desktops; it can be deployed to a range of thick and thin client access devices.
    [Show full text]
  • Analysis of Server-Smartphone Application Communication Patterns
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Aaltodoc Publication Archive Aalto University School of Science Degree Programme in Computer Science and Engineering Péter Somogyi Analysis of server-smartphone application communication patterns Master’s Thesis Budapest, June 15, 2014 Supervisors: Professor Jukka Nurminen, Aalto University Professor Tamás Kozsik, Eötvös Loránd University Instructor: Máté Szalay-Bekő, M.Sc. Ph.D. Aalto University School of Science ABSTRACT OF THE Degree programme in Computer Science and MASTER’S THESIS Engineering Author: Péter Somogyi Title: Analysis of server-smartphone application communication patterns Number of pages: 83 Date: June 15, 2014 Language: English Professorship: Data Communication Code: T-110 Software Supervisor: Professor Jukka Nurminen, Aalto University Professor Tamás Kozsik, Eötvös Loránd University Instructor: Máté Szalay-Bekő, M.Sc. Ph.D. Abstract: The spread of smartphone devices, Internet of Things technologies and the popularity of web-services require real-time and always on applications. The aim of this thesis is to identify a suitable communication technology for server and smartphone communication which fulfills the main requirements for transferring real- time data to the handheld devices. For the analysis I selected 3 popular communication technologies that can be used on mobile devices as well as from commonly used browsers. These are client polling, long polling and HTML5 WebSocket. For the assessment I developed an Android application that receives real-time sensor data from a WildFly application server using the aforementioned technologies. Industry specific requirements were selected in order to verify the usability of this communication forms. The first one covers the message size which is relevant because most smartphone users have limited data plan.
    [Show full text]
  • Rich Client Architecture
    Base One International Corp. www.boic.com Base One's Rich Client Architecture Base One provides a unique approach How Rich Client works for developing Internet-enabled applications, combining both efficiency and ease of programming through its "Rich Client" architecture. With this architecture, it is possible to build graphically intensive programs that look and perform like sophisticated client/server Windows applications, but where data is actually stored and retrieved across the Internet. At the same time, Base One makes it easy to develop such applications on a laptop or desktop and deploy them over the Internet without any changes. In Base One's model, each Rich Client looks like In contrast to thin client models, a rich a normal database application - because a Base client application shifts the burden away One Internet Server (BIS) acts as a transparent from shared network resources and proxy for a database across the Internet. server machines onto client computers, for better overall performance and application flexibility. While many applications are adequately handled by thin client architectures, some applications are much better suited to Base One's Rich Client model. (See table below for the types of applications that benefit the most.) A Service Oriented Architecture Like systems based on Web Services, Base One's Rich Client model is also a type of Service Oriented Architecture (SOA). It comprises independent, co- operating components (services) that can be distributed within or outside of an A Rich Client consists of a custom application organization's physical boundaries and written in Visual C++, C#, VB or VB.NET, using security domains, using varying platforms Base One's class libraries (BFC), and running on and programming languages.
    [Show full text]
  • Implementation of Embedded Web Server Based on ARM11 and Linux Using Raspberry PI
    International Journal of Recent Technology and Engineering (IJRTE) ISSN: 2277-3878, Volume-3 Issue-3, July 2014 Implementation of Embedded Web Server Based on ARM11 and Linux using Raspberry PI Girish Birajdar Abstract— As ARM processor based web servers not uses III. HARDWARE USED computer directly, it helps a lot in reduction of cost. In this We will use different hardware to implement this embedded project our aim is to implement an Embedded Web Server (EWS) based on ARM11 processor and Linux operating system using web server, which are described in this section. Raspberry Pi. it will provide a powerful networking solution with 1. Raspberry Pi : The Raspberry Pi is low cost ARM wide range of application areas over internet. We will run web based palm-size computer. The Raspberry Pi has server on an embedded system having limited resources to serve microprocessor ARM1176JZF-S which is a member of embedded web page to a web browser. ARM11 family and has ARMv6 architecture. It is build Index Terms— Embedded Web Server, Raspberry Pi, ARM, around a BCM2835 broadcom processor. ARM processor Ethernet etc. operates at 700 MHz & it has 512 MB RAM. It consumes 5V electricity at 1A current due to which power I. INTRODUCTION consumption of raspberry pi is less. It has many peripherals such as USB port, 10/100 ethernet, GPIO, HDMI & With evolution of World-Wide Web (WWW), its composite video outputs and SD card slot.SD card slot is application areas are increasing day by day. Web access used to connect the SD card which consist of raspberry linux functionality can be embedded in a low cost device which operating system.
    [Show full text]
  • Better Together: Rich Client Pcs and Cloud Computing
    IT@Intel Brief Better Together: Rich Client Intel Information Technology Computer Manufacturing PCs and Cloud Computing Cloud Computing Cloud computing poses new questions about the optimal March 2009 Profile: Rich Clients and enterprise client computing strategy. With more and more Cloud Computing services delivered from the cloud, which combination of • Users can access both cloud and client platforms and service delivery models best meets conventional computing services the needs of users and IT organizations? The Intel IT environment contains a mixture of • All service delivery models supported conventional and cloud computing services, delivered primarily to rich client PCs. We have found that whether services are kept in-house or outsourced to the cloud, the ability to perform local computing on the client offers the best user experience and the flexibility to run different types of applications. Only rich clients support the full range of service delivery methods, as shown in Figure 1. In addition, rich clients deliver full mobile computing capabilities for our users, including the ability to work offline. Rich clients remain an important part of our IT strategy as we work toward our future direction of migrating services to the cloud, supporting a wider range of client platforms, and enabling client virtualization. External Cloud Internal Cloud Software as a Service (SaaS) Applications Remote Access • Staffing • Other SaaS Applications and Portal Services • Messaging and Collaboration • Productivity Applications • Benefits • Hosted
    [Show full text]
  • Data Management for Portable Media Players
    Data Management for Portable Media Players Table of Contents Introduction..............................................................................................2 The New Role of Database........................................................................3 Design Considerations.................................................................................3 Hardware Limitations...............................................................................3 Value of a Lightweight Relational Database.................................................4 Why Choose a Database...........................................................................5 An ITTIA Solution—ITTIA DB........................................................................6 Tailoring ITTIA DB for a Specific Device......................................................6 Tables and Indexes..................................................................................6 Transactions and Recovery.......................................................................7 Simplifying the Software Development Process............................................7 Flexible Deployment................................................................................7 Working with ITTIA Toward a Successful Deployment....................................8 Conclusion................................................................................................8 Copyright © 2009 ITTIA, L.L.C. Introduction Portable media players have evolved significantly in the decade that has
    [Show full text]
  • Global Supplier Info Pack
    Global Supplier Info Pack FEDE Integration List of Fact sheets available List of Fact sheets available .............................................................................................. 2 First Steps: ....................................................................................................................... 4 What is FEDE [Ford Engineering Design Environment]? ..................................................... 4 GSI Overview .................................................................................................................... 4 Global Supplier Implementation (GSI) ....................................................................................... 4 FEDE process flow chart .................................................................................................... 6 FEDE Website Access ...................................................................................................... 10 Methods Pages Access .................................................................................................... 10 1. Supplier Company Access ................................................................................................... 11 2. Supplier Access Gatekeeper (SAG): ...................................................................................... 11 3. Supplier User Access: .......................................................................................................... 11 Direct Connection options - functionality comparison.....................................................
    [Show full text]
  • Chapter 9 Transact-SQL This Chapter Introduces the Many Options
    Transact-SQL Page 1 of 53 Chapter 9 Transact-SQL This chapter introduces the many options available for working with the SQL query language, along with the extensions and special features of Microsoft SQL Server/MSDE’s SQL dialect. The SQL standard was developed by the American National Standards Institute (ANSI) and the International Organization for Standardization (ISO). Today there are several standards whose names include the year in which they were released: SQL-89, SQL-92, and so on. The different standards vary in language functions and performance. Database vendors have fully or partially implemented the SQL standards in their products. Unfortunately, they have not yet agreed on a unified standard. Almost all have added their own extensions to the SQL implementations, so there are some significant differences among the SQL variations of individual products. Microsoft Access 2000 and Microsoft Access 2002 use Jet Engine 3.6—the database core for Access mdb databases—to support SQL-89 Level 1 with several extensions, as well as SQL-92 (albeit not completely) if you are using Jet Engine 4 with the ADO database interface. SQL Server/MSDE supports SQL-92, which for the most part conforms to the ANSI/ISO standard. The SQL language functions consist of two parts: The Data Definition Language (DDL) and the Data Manipulation Language (DML). With DDL, you can create, edit, and delete table structures and define indexes. The DML is used to query data or to edit and delete data. In Access, you usually only work with the DML, as tables and indexes are created with the tools available in Access.
    [Show full text]
  • Microcomputers: NQS PUBLICATIONS Introduction to Features and Uses
    of Commerce Computer Science National Bureau and Technology of Standards NBS Special Publication 500-110 Microcomputers: NQS PUBLICATIONS Introduction to Features and Uses QO IGf) .U57 500-110 NATIONAL BUREAU OF STANDARDS The National Bureau of Standards' was established by an act ot Congress on March 3, 1901. The Bureau's overall goal is to strengthen and advance the Nation's science and technology and facilitate their effective application for public benefit. To this end, the Bureau conducts research and provides; (1) a basis for the Nation's physical measurement system, (2) scientific and technological services for industry and government, (3) a technical basis for equity in trade, and (4) technical services to promote public safety. The Bureau's technical work is per- formed by the National Measurement Laboratory, the National Engineering Laboratory, and the Institute for Computer Sciences and Technology. THE NATIONAL MEASUREMENT LABORATORY provides the national system of physical and chemical and materials measurement; coordinates the system with measurement systems of other nations and furnishes essential services leading to accurate and uniform physical and chemical measurement throughout the Nation's scientific community, industry, and commerce; conducts materials research leading to improved methods of measurement, standards, and data on the properties of materials needed by industry, commerce, educational institutions, and Government; provides advisory and research services to other Government agencies; develops, produces, and
    [Show full text]
  • Usb Laptop Console 2
    QUICK SETUP GUIDE KVT100A-FT USB LAPTOP CONSOLE 2 24/7 TECHNICAL SUPPORT AT 1.877.877.2269 OR VISIT BLACKBOX.COM PACKAGE CONTENTS: The USB Laptop Console 2 is an adapter which enables you to control any computer with USB ports and a VGA video output, using just your • Second-Gen USB Laptop Console laptop. (Computer systems with DVI, HDMI or DisplayPort video will • (1x) 6 ft.(1.8m) high speed USB-A to require a DVI to VGA, HDMI to VGA or DisplayPort to VGA adapter.) USB-miniB cable The USB Laptop Console 2 streams real-time video over high-speed • (1x) flash drive with software and USB, from the host computer (server) to the application software you Users Manual (PDF) will install on your laptop. At the same time, the software emulates • Quick setup guide (printed) the server’s USB keyboard and mouse. A window on your laptop acts as a console and gives you easy and complete control over the server. It works even if the server is in the BIOS, or is otherwise damaged. No software is ever installed on the server. The USB Laptop Console 2 can be hot-plugged into a working system at any time. 1.877.877.2269 BLACKBOX.COM NEED HELP? QUICK SETUP GUIDE LEAVE THE TECH TO US KVT100A-FT LIVE 24/7 TECHNICAL SUPPORT USB LAPTOP CONSOLE 2 1.877.877.2269 Software Installation: Before installing the software in a Windows or Apple computer, please ensure the USB Laptop Console 2 is DISCONNECTED. Cancel any “Add new hardware” dialog screens as these can interfere with the installation process.
    [Show full text]
  • Docstar SQL Edition
    DocSTAR SQL Edition Technical Documentation Chapter 1 Requirements ..................... 1-3 Requirements ...................................................1-4 Hardware ........................................................ 1-4 Software .......................................................... 1-4 Chapter 2 Setup.................................. 2-1 General Setup Guidelines .............................2-2 Installation Scenarios ................................... 2-2 Summary of Steps......................................... 2-3 Installation Steps for Scenarios .................. 2-5 DocSTAR Setup Routine ............................ 2-6 Log files.......................................................... 2-7 Individual Setup Steps ...................................2-9 Prepare Existing DocSTAR Host............... 2-9 Setup NT Server............................................ 2-9 Setup SQL Server ....................................... 2-10 Copy existing DocSTAR 2.3 data to new NT server 2-12 Configure SQL Database Structures........ 2-12 Install ODBC Drivers................................. 2-12 Install DocSTAR SE.................................. 2-13 Database Activity (Initialize, Update, or Upsize) 2-19 Restore DocSTAR SE Data on a Bare NT Server 2-25 Final DocSTAR Steps................................ 2-25 Copy Setup Routines to Host.................... 2-26 Manual Processes......................................... 2-29 Manually Configure SQL Database Structures 2-29 Manually Edit Data Source Names.......... 2-34 Convert Jet
    [Show full text]
  • Windows Multi-DBMS Programming
    • Windows Multi-DBMS Programming Using C++, Visual Basic®, ODBC, OLE2, and Tools for DBMS Projects Ken North John Wiley & Sons, Inc. New York • Chichester • Brisbane • Toronto • Singapore : . ... • - . Contents Preface XXV Chapter 1 Overview and Introduction 1 The Changing Face of Development 2 Overview 2 Required Hardware and Software 3 Chapter 2 Windows Software Development: Concepts and Issues Terms and Concepts 5 Windows Features and Database Applications 7 Processes, Tasks, and Threads 7 Multitasking 8 Protected Addresses and Safe Multitasking 8 Threads: NetWare and Win32 9 Scheduling 9 Windows Programming 10 Static and Dynamic Linking 11 Dynamic Link Libraries 12 INI Files 12 Resources and Help Files 12 Dialog Boxes 13 Custom Controls 14 Notation 14 Windows Developer's Notebook 15 Baselines 15 Version Control 16 Common Development Steps 16 VH viii Contents Pseudocode 17 Debugging 17 Visual Programming 19 Formal Development Methods 19 Crafting Code for Windows 20 GUI Design Considerations and Database Applications 20 Chapter 3 Database Applications: Concepts and Issues 22 Building Database Applications 22 Database Architectures 23 DBMS Evolution 23 ISAM 24 Network and Hierarchical Databases 24 SQL and Relational Databases 25 Desktop, File Server, and Client-Server 29 Terms and Concepts 30 SQL Concepts 38 Database Design 39 Network Database Design 40 Relational Database Design 40 Query Optimization 45 Issues 48 Sample Database and Applications 49 Info Enterprises 49 Sample Applications 50 Road Map for Database Developers 55 Tools
    [Show full text]