Download - 1 Application Development in Fourth Generation Systems Semua Catatan kuliah dapat di Download dari :
1
Application Development in Fourth Generation Systems
Semua Catatan kuliah dapat di
Download dari: http://staffsite.gunadarma.ac.id/sunny
2
Fourth Generation Systems
Objectives: to speed up the application building
process to reduce maintenance costs by making
the application quick and easy to modify to make languages user friendly so that
users can solve their own problems Also: to incorporate the latest advances in
development techniques & technology to achieve the above
3
Fourth Generation Development
Users and developers collaborate Usually an Iterative DevelopmentIterative Development
the system is described graphically a prototypeprototype is built based on the design evaluation and refinement of design a second and third build may be
required final testing and deployment
4
Fourth Generation Development...
Involves: Client / Server Development Event Driven Programming Graphical User Interface (GUI)
Development Object-Oriented Programming (and
reuse) Database Transaction Processing
5
The Application Developer must know:
how to manage a database a query language (SQL & embedded SQL) system development methodologies rapid prototyping of applications
Rapid Application Development Client / Server concepts GUI / Windows concepts OO programming
performance tuning of the application transaction management with
concurrency and locking strategies
6
Developing a 4GL Application
Visual Programming Environment with an interactive dialogue structure
Software Engineering Support interactive testing interactive debugger code/objects reuse multiple developers configuration management
7
Interactive Dialogue Structure: Screen interaction via form-filling Leads the developer (with Help and
validation) Offers menu choices, lists, function keys... Default Options (developer can change
default) Two dimensional
(developer can click on an object, move a cursor or scroll an image ...)
8
Client / Server Concepts
Client / Server Systems Client / Server Systems are are decomposed into three elements:
servers, clients & the links between them Server:Server:
provides a clearly defined set of services & a documented interface for activating those services
Client:Client: requests services; processes, then displays the
results Linkage:Linkage:
based on telecommunications links or calls within the same processor
9
Client / Server Concepts ...
Client / Server ConnectionsClient / Server Connections Open SystemsOpen Systems
the interfaces used within the system adhere to international standards
Distributed SystemsDistributed Systems can be categorized by what is distributed:
processing, data or both OOOO
objects are like servers or clients with a message interface
Most common is the PC-style workstation Most common is the PC-style workstation connected over a LANconnected over a LAN or WANor WAN
10
Client / Server Concepts ...
Application Development TiersApplication Development Tiers Presentation Layer - GUIs Business Rules or Application Logic Database Layer
2-Tier2-Tier Fat Server - data and business rules Fat Client - GUI and business rules
3-Tier or 3-Tier or nn-tier-tier each layer on its own
11
Client / Server Concepts ...
4GLs and Client / Server4GLs and Client / Server At the Presentation Layer
most 4GLs concentrate on the interface At the Business Rules Layer
the business logic may be coded in the client application, be in stored database procedures and triggers or be in a separate tier
At the Database Layer use wizards to generate the database
4GL Trends - 3-Tier, Distributed, OO, GUI4GL Trends - 3-Tier, Distributed, OO, GUI
12
GUI / Windows Concepts
User Interface DesignUser Interface Design Ultimate goal is EASE OF USE Features
Real world metaphors Selection rather than remembering Consistency User control Feedback Forgiveness Perceived stability
13
GUI/Windows Concepts ...A well designed screen
can improve productivity by 25%
Principles of Good Screen DesignPrinciples of Good Screen Design All screens in the system should look
and act consistent Cohesion:
Each screen should do one complete task
14
GUI / Windows Concepts ...
Cohesion Only data relevant to the task is on the screen Build screen L->R, Top -> Bottom Screen contents should be balanced,
symmetrical Horizontal division of data better than vertical Use no more than 25% of screen Left justify data fields Use visual highlighting carefully e.g.
high brightness to identify data fields Reverse video can be hard to read, but
useful for errors
15
GUI / Windows Concepts ... The Use of ColourThe Use of Colour
Excessive colour can be confusing About 8% of European males are
colour-blind and cannot distinguish red from green
Average users remember the meaning of 5-7 colours so keep the number of colours to 4 giving the brain space for other activities
16
GUI / Windows Concepts ...
The Use of Colour ...The Use of Colour ... Avoid combining colours with different
perceptual depths e.g. red advances while blue recedes
It is difficult to distinguish blue lines on black & yellow lines on
white Use common meanings for colours e.g.
red: danger, stop yellow: caution, slow green: OK, go
17
GUI / Windows Concepts ...
Multiple WindowsMultiple Windows Application design must determine the (WWS)
WWS - Working Windows Set ie the number of windows the user needs in a certain time period to perform the task efficiently
If the WWS cannot fit the screen the user must: search or scroll to find the required window delete windows to make room for the current one
The user is distracted by “non-active” windows e.g. background tasks with activities like printing &
system monitoring
18
GUI / Windows Concepts ...
IconsIcons Are being increasingly used in GUI’s to
represent functions Must be recognisable to the user Best for concrete objects, most effective
as a miniature e.g. waste-paper basket = destroy
Note that some symbols have different meanings in different cultures.
19
Creating an Application
Data Model and DataData Model and Data Design database (done by lecturer) Create database (done by IT Services) Create tables
use SQL scripts or a software tool(Oracle Schema Manager)
Populate the tables with data for testing
use SQL scripts or a software tool(Oracle Enterprise Manager)
20
Creating an Application ...
Application DesignApplication Design Develop the application specification
Partition the application for client/server: where will the business rules be coded
Identify the tasks/functions/modules Design the interaction or flow of screens
ie View Navigation Diagram, Screen Hierarchy Chart or Application Flow Diagram
21
Creating an Application ...
Application ConstructionApplication Construction Create the application
include library routines and global variables Create each screen
Connect to the database for data access if required
Design the interface layout Set values for interface objects Write code to perform required functions:
normally related to user interaction with interface objects (events)
Compile and test each screen
22
Creating an Application ...
Application CompletionApplication Completion Test the Application
Integrate all screens Exercise all use-cases Include creation of extra test cases if
necessary Deploy the application
create executables and DLLs, Packages etc
23
Terms and Concepts Window
basic visual building block of an application Event
triggered by a user or by code in a script activates a block of 4GL code or script
Script sequence of statements that perform
processing in response to an event e.g. PL/SQL, PowerScript
Control or Interface Object created by the developer to allow user to
interact with the application, or to enhance the interface.
24
Tutorial - to be completed by next week
Create the Oracle database tables for your assignment use Oracle Schema Manager (or SQL scripts)
Programs -> Oracle-> OraEMGR -> DBA Management Pack -> Schema Manager)
follow carefully the table definitions given in the assignment, noting primary and foreign keys
Enter data into the tables ensure data conforms to table relationships