Fourth Generation Languages (4GLs) University of California, Berkeley School of Information Management and Systems SIMS 257: Database Management October 24, 2000 Database Management -- R. Larson Announcements • Setting up ORACLE access – Oracle 8i WebDB and is ready for use… ALMOST – We have set up accounts for SIMS and NonSIMS students using your login names. October 24, 2000 Database Management -- R. Larson Today • More on ORACLE • Fourth Generation Languages • Use of 4GLs in application development October 24, 2000 Database Management -- R. Larson Fourth Generation Languages • • • • • 1st Generation -- Machine Language 2nd Generation -- Assembly Languages 3rd Generation -- High-Level Languages 4th Generation -- Non-Procedural Languages 5th Generation -- ?? Knowledge-based ?? Natural Language ?? • Where do Object-Oriented Languages fit?? October 24, 2000 Database Management -- R. Larson Chauffeurs • In the early days of the US car industry, production volumes were growing fast, and a wellknown sociologist was asked to predict the total number of automobiles that would ever be manufactured. After a great deal of study, the sociologist reported that no more than 2 million would be manufactured in the life cycle of the car. If the car lasted ten years on average, the maximum annual production would never exceed 200,000. This conclusion was based on the muchresearched figure that no more than 2 million people would be willing to serve as chauffeurs. From James Martin - Fourth Generation Languages October 24, 2000 Database Management -- R. Larson Fourth Generation Languages • In the database environment these are used for creation of database applications • To speed up the application building process • To make applications easy and quick to change • To minimize debugging problems • To generate bug-free code from high-level expressions of requirement • To make languages user-friendly so that “end-users” can solve their own problems and put computers to work. October 24, 2000 Database Management -- R. Larson Basic Principles of 4GLs • The Principle of Minimum Work • The Principle of Minimum Skill • The Principle of avoiding alien syntax and mnemonics • The Principle of Minimum Time • The Principle of Minimum errors • The Principle of Minumum Maintenance • The Principle of Maximum Results From James Martin - Fourth Generation Languages October 24, 2000 Database Management -- R. Larson Properties of 4GLs • User Friendly • A nonprofessional programmer can obtain results with it • It employs the database management system directly • Programs for most applications can be created with 10 times fewer instructions than in a Third Generation Language October 24, 2000 Database Management -- R. Larson More Properties of 4GLs • Non procedural code is used wherever possible • It make intelligent default assumptions about what the user wants wherever possible • It is designed for online operation • It enforces or encourages structured code • It makes it easy to understand and maintain another person’s code October 24, 2000 Database Management -- R. Larson More Properties of 4GLs • Non-DP users can learn a subset of the language in a short course • It is designed for easy debugging • Prototypes can be created and modified quickly • Results can be obtained in an order of magnitude less time than with a 3GL for most applications October 24, 2000 Database Management -- R. Larson Selection Criteria for 4GLs • Is it intended for routine computing of ad hoc decision making • Is it intended for end users or DP professionals? (many 4GLs are appropriate for both) • Does it require the skills of a programmer, or can an analyst who does not program in a 3GL use it. October 24, 2000 Database Management -- R. Larson Selection Criteria for 4GLs • Which of the following features does it provide? – – – – – – Simple queries Simple queries and updates Complex queries Complex queries and updates The ability to create a database quickly Intelligent database operations, where the change of one value in the database causes other operations to occur automatically, such as validity checks, cross references, and the updating of related values. October 24, 2000 Database Management -- R. Larson Selection Criteria for 4GLs • Which of the following features does it provide?(cont) – Generation of data-entry screens for key-entry operators (with validity checks) – Generation of data-update screens for key-entry operators (with validity checks) – A procedural language giving full programming capability – Graphics techniques for application design – Spreadsheet manipulation – Multidimensional matrix manipulation – Report generation – Graphics generation October 24, 2000 Database Management -- R. Larson Selection Criteria for 4GLs • Which of the following features does it provide?(cont) – – – – – – – Graphics manipulation Decision support for what-if questions Mathematical analysis tools Financial analysis tools Other decision-support tools Text manipulation Electronic Mailbox • Is it on-line or off-line? • Does it run on mainframes, minicomputers or personal computers? • Can it access mainframe or remote databases • Is it genuinely easy to use • Can results be obtained with it very quickly? October 24, 2000 Database Management -- R. Larson Components of a 4GL for building routine applications Application Parameters Interpreter October 24, 2000 Data Specification Report Specification Screen Specification Rules Specification Procedural facility Feedback Testing tools/debugger Optimizing compiler Database Management -- R. Larson 5GLs -- Natural Language • Possibilities • Problems October 24, 2000 Database Management -- R. Larson Natural Language • Advantages of using NL – It encourages untrained users to start – It encourages upper-management use of computers – It reduces the time taken learning complex syntax – It lessens the frustration, bewilderment and anger caused by BAD COMMAND responses – It is likely to extend greatly the usage of computers James Martin, Fourth Generation Languages, 1985 October 24, 2000 Database Management -- R. Larson Natural Language Disadvantages of using NL • It lacks precision • It is not good for expressing precise and complex logic • It is not good for expressing neat structures • It encourages semantic overshoot Appropriate response to the disadvantage • It should be combined with other dialogue contructs that aid in the representation of precise logic and structures James Martin, Fourth Generation Languages, 1985 October 24, 2000 Database Management -- R. Larson Natural Language Disadvantages of using NL • It takes substantial time to key in sentences • Ambiguities are possible • Substantial is needed October 24, 2000 Appropriate response to the disadvantage • Sentences and words can be abbreviated • Speech input as well as typed input will be used • The computer should detect and resolve ambiguities • The processing should be on PC processing workstations. Processing is dropping rapidly in cost. James Martin, Fourth Generation Languages, 1985 Database Management -- R. Larson Next Time • Application development for the Web environment – Introduction to Cold Fusion • Oracle Setup and queries October 24, 2000 Database Management -- R. Larson