ZeePedia

Application Programs, User Interface, Forms, Tips for User Friendly Interface

<< Inner Join, Outer Join, Semi Join, Self Join, Subquery,
Designing Input Form, Arranging Form, Adding Command Buttons >>
img
Database Management System (CS403)
VU
Lecture No. 32
Reading Material
"Database Management Systems", 2nd edition, Raghu Ramakrishnan, Johannes Gehrke,
McGraw-Hill
Database Management, Jeffery A Hoffer
Overview of Lecture
o Application Programs
o User Interface
o Designing Forms
Until now we have studied conceptual database design, whose goal is to analyze the
application and do a conceptual design on the application. The goal is to provide a
conceptual design and description of reality. It is independent of data model. Then we
discussed the relational database design. A relational database stores all its data inside
tables, and nothing more. All operations on data are done on the tables themselves or
produce another tables as the result. Here we had discussed the selection of data
model. Thereafter we had discussed data manipulation language through SQL. We are
using SQL Server as a tool. In this lecture we will discuss application program.
Application Programs
Programs written to perform different requirement posed by the users/organization are
the application programs. Application programs can be developed in parallel or after
the construction of database design. Tool selection is also critical, but it depends upon
developer in which he feels comfortable.
General Activities in Application Programs
Following are the general activities, which are performed during the development of
application programs:
·  Data input programmes
·
Editing
·
Display
238
img
Database Management System (CS403)
VU
·
Processing related to activities
·
Reports
User Interface
In the minds of users, a system's user interface is the system; everything else is just
stuff they're happy to ignore. The design of the user interface is therefore critical to
the success or failure of a project. Get it right, and your users will forgive the
occasional infelicity in implementation. Get it wrong, and it won't really matter how
efficient your code is.
The irony here is that if you do get it right, hardly anyone will notice. Really elegant
interfaces are invisible. Even if you get it wrong, no one might notice. The interfaces
of many computer systems, particularly database systems, are so awkward that your
system will be just one more of the mediocre, mildly abusive computer systems
people have come to expect.
Effective interfaces can also require more work to implement, although this isn't
necessarily the case. In addition, the payoffs can be huge, and they're not all of the
"virtue is its own reward" variety. An effective user interface minimizes the time
users require to learn and implement the system. Once the system is implemented,
productivity gains are higher if users don't have to struggle to bend it to their will.
Chances are good that both of these issues were addressed in the project goals. They
certainly impact the infamous bottom line.
Effective interfaces that closely match the users' expectations and work processes also
minimize the need for external documentation, which is always expensive. And while
users might not consciously notice how wonderful your user interface is, they'll
certainly notice that your system seems to just work better.
So, what constitutes an effective interface? To my mind, it's one that helps users
accomplish their tasks and otherwise gets out of the way. An effective interface
doesn't impose its requirements on users. It never forces users to play by its rules; it
plays by the users' rules. An effective interface doesn't force users to learn a bunch of
239
img
Database Management System (CS403)
VU
uninteresting stuff just to use it. And finally, it doesn't behave in unexpected ways.
Following are the two types of user interfaces:
·
Text based
·
Graphical User Interface (GUI) most commonly called as Forms
Text Based User Interface
In text based user interface certain keyboard numbers are designated for any action
but it is used very rarely nowadays. For example
Adding a Record
1
Deleting a Record
2
Enrollment
3
Result Calculation
4
Exit
5
Forms
Forms are now days used extensively in the application programs. Following are the
different types of forms
240
img
Database Management System (CS403)
VU
Browser Based
These are web-based forms. They are developed in HTML, scripting language or
Front Page.
Non-Browser/Simple
Graphical User Interface
This is an example of Graphical user interface
User Friendly Interfaces
Two definitions of user-friendly that are often mooted are "easy to learn" and "easy to
use." If we put aside for the moment the question of what, exactly, "easy" means, we
still have to ask ourselves, "Easy for whom?" The system that's easy for a beginner to
learn is not necessarily easy for an expert to use. Your best approach is to consider the
needs of each level of user and accommodate each with different facets of the
interface. Following are the different kinds of users:
Beginners
Everyone is a beginner at some point. Very few people remain that way--they will
either pass through the stage to intermediacy, or they'll discard your system entirely in
favor of someone else's. For this reason, you must be careful not to build in support
for beginners that will get in the way of more advanced users. Beginners need to
know what your system does before they start to learn how to use it. The best way to
present this information is outside the main system itself. For simple systems, an
introductory dialog box that describes the system can be sufficient. (Just be sure you
always include a means of dismissing the dialog box permanently.) For more complex
241
img
Database Management System (CS403)
VU
systems, a guided tour might be more appropriate. Online help isn't a good option for
beginners. They might not know it exists or, if they do, how to use it. I have had some
success using an online user's guide, however, by including a link to it from the
introductory dialog box and from the Help menu. To be successful with beginners,
these guides must be task-oriented. Beginners don't want to know what "menu item"
means; they want to know how to create an invoice.
Intermediate
For most systems, the majority of users fall into the intermediate category.
Intermediate users know what the system does, but they often forget the details of
how. This is the group you must support directly in the user interface. Fortunately, the
Microsoft Windows interface provides a lot of tools for helping these users.A well-
designed menu system is one of the best tools for reminding intermediate users of the
system capabilities. A quick scan of the available menu items will immediately
remind them of the functions available and at the same time allow them to initiate the
appropriate task.
An excellent second level of support for intermediate users is online help. Writing
online help is outside the scope of this book. In this context, however, I will mention
that most intermediate users will use the index as their primary access mechanism.
The index should therefore be as complete as you can possibly make it.
Experts
Expert users know what to do and how to do it. They're primarily interested in doing
things quickly. The more shortcuts you can build into your system, the happier you
will make this group of users. In my experience, expert users tend to be keyboard-
oriented, so make sure that you provide a way to move around the system using the
keyboard if you're catering to this group.Expert users also appreciate the ability to
customize their working environment. Providing this functionality can be an
expensive exercise, however, so you will want to carefully evaluate the benefit before
including it. If you do decide to include some level of interface customization, even if
it's only a matter of arranging windows on the screen, be certain to maintain the
changes between sessions. Nothing is as irritating as having to rearrange everything
every time you load a program
242
img
Database Management System (CS403)
VU
Tips for User Friendly Interface
Following are some of the important tips, which should be adhered for interfaces:
·
It should be user friendly and user must not search for required buttons or text
boxes.
·
Interface should be designed in such a manner that user is in charge of the
form.
·
It should be designed in manner that user memory is always tested
·
You should be consistent in your approach while designing interface.
·  It should be processes based rather than the data structure based.
Entities and Relationships
First type is the simple entity on a page.
243
img
Database Management System (CS403)
VU
Windows Controls
There are number of controls which are used to take input and display output like
buttons, checkboxes etc. Following are the examples
244
img
Database Management System (CS403)
VU
Numbers, Dates and Text
Normally text boxes are used for the display of dates
Summary
In today's lecture we have studied the application programs and designing user
interface and forms. We have studied different techniques and practices for the user
interface and form designing. We will discuss an example of form designing in our
next lecture.
245
Table of Contents:
  1. Introduction to Databases and Traditional File Processing Systems
  2. Advantages, Cost, Importance, Levels, Users of Database Systems
  3. Database Architecture: Level, Schema, Model, Conceptual or Logical View:
  4. Internal or Physical View of Schema, Data Independence, Funct ions of DBMS
  5. Database Development Process, Tools, Data Flow Diagrams, Types of DFD
  6. Data Flow Diagram, Data Dictionary, Database Design, Data Model
  7. Entity-Relationship Data Model, Classification of entity types, Attributes
  8. Attributes, The Keys
  9. Relationships:Types of Relationships in databases
  10. Dependencies, Enhancements in E-R Data Model. Super-type and Subtypes
  11. Inheritance Is, Super types and Subtypes, Constraints, Completeness Constraint, Disjointness Constraint, Subtype Discriminator
  12. Steps in the Study of system
  13. Conceptual, Logical Database Design, Relationships and Cardinalities in between Entities
  14. Relational Data Model, Mathematical Relations, Database Relations
  15. Database and Math Relations, Degree of a Relation
  16. Mapping Relationships, Binary, Unary Relationship, Data Manipulation Languages, Relational Algebra
  17. The Project Operator
  18. Types of Joins: Theta Join, Equi–Join, Natural Join, Outer Join, Semi Join
  19. Functional Dependency, Inference Rules, Normal Forms
  20. Second, Third Normal Form, Boyce - Codd Normal Form, Higher Normal Forms
  21. Normalization Summary, Example, Physical Database Design
  22. Physical Database Design: DESIGNING FIELDS, CODING AND COMPRESSION TECHNIQUES
  23. Physical Record and De-normalization, Partitioning
  24. Vertical Partitioning, Replication, MS SQL Server
  25. Rules of SQL Format, Data Types in SQL Server
  26. Categories of SQL Commands,
  27. Alter Table Statement
  28. Select Statement, Attribute Allias
  29. Data Manipulation Language
  30. ORDER BY Clause, Functions in SQL, GROUP BY Clause, HAVING Clause, Cartesian Product
  31. Inner Join, Outer Join, Semi Join, Self Join, Subquery,
  32. Application Programs, User Interface, Forms, Tips for User Friendly Interface
  33. Designing Input Form, Arranging Form, Adding Command Buttons
  34. Data Storage Concepts, Physical Storage Media, Memory Hierarchy
  35. File Organizations: Hashing Algorithm, Collision Handling
  36. Hashing, Hash Functions, Hashed Access Characteristics, Mapping functions, Open addressing
  37. Index Classification
  38. Ordered, Dense, Sparse, Multi-Level Indices, Clustered, Non-clustered Indexes
  39. Views, Data Independence, Security, Vertical and Horizontal Subset of a Table
  40. Materialized View, Simple Views, Complex View, Dynamic Views
  41. Updating Multiple Tables, Transaction Management
  42. Transactions and Schedules, Concurrent Execution, Serializability, Lock-Based Concurrency Control, Deadlocks
  43. Incremental Log with Deferred, Immediate Updates, Concurrency Control
  44. Serial Execution, Serializability, Locking, Inconsistent Analysis
  45. Locking Idea, DeadLock Handling, Deadlock Resolution, Timestamping rules