E  
  V  
  E  
  R  
  Y  
     
  S  
  Y  
  M  
  P  
  A  
  T  
  H  
  E  
  T  
  I  
  C  
     
  M  
  O  
  M  
     
  &  
     
  L  
  O  
  V  
  I  
  N  
  G  
     
  W  
  I  
  F  
  E  
     
  A  
  L  
  W  
  A  
  Y  
  S  
     
  B  
  A  
  C  
  K  
  U  
  P  
     
  T  
  H  
  I  
  E  
  R  
     
  S  
  O  
  N  
     
  &  
     
  H  
  U  
  S  
  B  
  A  
  N  
  D  
     
  T  
  O  
     
  M  
  A  
  K  
  E  
     
  T  
  H  
  E  
  M  
     
  E  
  F  
  F  
  I  
  C  
  I  
  E  
  N  
  T  
     
  I  
  N  
     
  T  
  H  
  I  
  E  
  R  
     
  P  
  R  
  O  
  F  
  E  
  S  
  S  
  I  
  O  
  N  
     
  S  
  O  
     
  T  
  H  
  E  
     
  C  
  O  
  M  
  P  
  E  
  T  
  I  
  T  
  I  
  V  
  E  
     
  B  
  A  
  C  
  K  
  E  
  N  
  D  
     
  C  
  A  
  N  
     
  M  
  A  
  K  
  E  
     
  T  
  H  
  E  
     
  S  
  O  
  F  
  T  
  W  
  A  
  R  
  E  
     
  E  
  F  
  F  
  I  
  C  
  I  
  E  
  N  
  T  
     
  F  
  O  
  R  
     
  T  
  H  
  E  
     
  D  
  E  
  V  
  E  
  L  
  O  
  P  
  E  
  R  
     
  &  
     
  T  
  H  
  E  
     
  E  
  N  
  D  
     
  U  
  S  
  E  
  R  
  S  
     
  A  
  S  
     
  W  
  E  
  L  
  L  
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
  E  
  V  
  E  
  R  
  Y  
     
  S  
  Y  
  M  
  P  
  A  
  T  
  H  
  E  
  T  
  I  
  C  
     
  M  
  O  
  M  
     
  &  
     
  L  
  O  
  V  
  I  
  N  
  G  
     
  W  
  I  
  F  
  E  
     
  A  
  L  
  W  
  A  
  Y  
  S  
     
  B  
  A  
  C  
  K  
  U  
  P  
     
  T  
  H  
  I  
  E  
  R  
     
  S  
  O  
  N  
     
  &  
     
  H  
  U  
  S  
  B  
  A  
  N  
  D  
     
  T  
  O  
     
  M  
  A  
  K  
  E  
     
  T  
  H  
  E  
  M  
     
  E  
  F  
  F  
  I  
  C  
  I  
  E  
  N  
  T  
     
  I  
  N  
     
  T  
  H  
  I  
  E  
  R  
     
  P  
  R  
  O  
  F  
  E  
  S  
  S  
  I  
  O  
  N  
     
  S  
  O  
     
  T  
  H  
  E  
     
  C  
  O  
  M  
  P  
  E  
  T  
  I  
  T  
  I  
  V  
  E  
     
  B  
  A  
  C  
  K  
  E  
  N  
  D  
     
  C  
  A  
  N  
     
  M  
  A  
  K  
  E  
     
  T  
  H  
  E  
     
  S  
  O  
  F  
  T  
  W  
  A  
  R  
  E  
     
  E  
  F  
  F  
  I  
  C  
  I  
  E  
  N  
  T  
     
  F  
  O  
  R  
     
  T  
  H  
  E  
     
  D  
  E  
  V  
  E  
  L  
  O  
  P  
  E  
  R  
     
  &  
     
  T  
  H  
  E  
     
  E  
  N  
  D  
     
  U  
  S  
  E  
  R  
  S  
     
  A  
  S  
     
  W  
  E  
  L  
  L  
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     

How to Design Backend of Software

It is a very critical part of software or even we can say that it is the foundation of the whole software. A lay man don't bother about the efficiency of the backend but he wants the accuracy of outputs, a developer wants the efficiency of backend that he can easily avoid the problems or if they occour they can be handled effectively. When we give any input, it goes in the backend to find its output. The quality of the software is measured mostly from its backend if it is a database software. An efficient backend can save your time, code, cost and load on your hardware but in the other case it might be opposite. A professional programmer always emphasis on a strong backend because he knows the hurdles that can be faced with a single dirty module of your software.
What is the backend?
.Normally the database of your software. A huge data from which you have to find your specific information.
.The modules, the procedures that perform some specific tasks. These modules and procedures perform the functionally of your software.
.The algorithms that are instructions to your hardware to perform the required process. These instructions are written in computer languages and automated tools.
.The entity relationship diagrams and UML notations. For making relationship in between components, actors, tables, modules or procedures.
.Security checks, authentication methods, data hiding techniques and data recovery options etc.
.Simply the soul and the mind of your software.

What methods are there?

There are multiple ways to design your backend of the software.
.Gather requirements and put them into a shape that can fulfill the needs.
.Get some requirements, place them in a dirty software and ask for detail requirements from the user by giving him the view of that software.
.By following a predefined software process model.
.Define your own software process model according to the needs and implement it on your project.
.Take your time, make a complete research, calculations and analysis, put the feasibility report in front of your customer and if he is agree with it then start otherwise search alternatives.

How to design backend?

All above mentioned methods are quite compatible according to the nature of the project that you are going to design. But a professional engineer will select the method that concern with not only the requirements, time period, boundary of the project, its completion criteria but will also concern with the finance involve in it, because there are two major tasks in front of him.

          i)- To satisfy the customer.
          ii)- To earn something.

The cost factor is very much involve in this selection. If your customer can bear, then go for the best but in other case select best feasible method. So we choose to discuss a best method that can cover maximum and we can understand from 'A' to 'Z'.

We are going to discuss a database project because normally it gives us the better idea of designing the backend. To design a database project we can follow the " Life cycle of Relational Database".

What is relational database?

E.F.Codd originated the idea of the relational databases in his paper of 1970. In it he proposed a model for data storage based on n-ary relations, a normal form for database relations and the concept of a universal data manipulation language based on relational algebra, a branch of mathematics. Subsequently, further work on the relational model look two major paths, development of methods of data representation around the definition of further normal forms and the development of a universal data manipulation language, culminating today in SQL (Structured Query Language) which itself has realized in several SQL standards.

What is life cycle of relational database?

It is a full-fledged process of designing a comprehensive database. As we have discussed earlier in a method that we can adopt a predefined process consisting some world wide standards defined by some international organizations to achieve maximum efficiency. So this life cycle process is a predefined set of phases to achieve maximum efficiency and reliability. Following are its phases.
               . Introduction to real time problem.
               . ER diagrams.
               . Normalization.
               . Set of tables.
               . Create tables.
               . File organization
               . Query design
               . Screen design
               . Report design
               . Testing
               . Handover
. Introduction to real time problem
In this phase the nature of the problem is completely understood. Constraints or checks and outline feasible solutions are made by using some methodologies. These methodologies are;
                i) - SSADM (Structured System Analysis and Design methods).
                ii) - IEO (information Engineering Overlap).
. ER Diagrams
These are detailed logical representation of data. In this phase entity relational diagrams are drawn to make relationship in between data items. Primary and foreign keys are defined in it. Up till now our is become in a modified form.
. Normalization
Normally it is the conversion of ER diagrams into entity tables. It is used to check entity relationship models. Recombination of entity types may result from normalization and results from normalization should be consistent.
. Set of tables
In this phase the analysis of tables is made that which tables are required. Number and types of tables are estimated here.
. Create tables
Tables are created by using any compatible or required tool. Normally tables are created in DBA but mostly in SQL. At small level databases tables are created in Microsoft Access. In this stage the rules of primary and foreign keys are specified.
. File organization
Having design the logical schema, it is desirable to be able to specify the physical scheme, that is the way the database relations are to be stored on the storage media. This is called the file organization. There are essentially two factors to consider.
               . Firstly, how the records (rows) are to be physically mapped onto the                  storage medium.
               . Secondly, which indexes (if any) are to be used and if so, which fields                  (attributes, columns) are to be indexed. Indexes are designed to                  increase the speed of access to required records.
The deciding factor in this is the access method (or access methods) which will be used to retrieve and update data on the database. The file organization should be decided on the basis of maximum speed of access, the type of access required and storage space considerations.
. Query design
In query design, the database commands are prepared. Normally it is done in SQL, DBA or oracle. Queries are designed according to the database requirements and the designer should have at least a good idea of main types of query commands.
. Screen design
It is the overall appearance of your database. These are the inputs, partially determined by the data items. Normally it is determined by HCI ( Human Computer Interface) which include the color, fonts, quality of data items per screen, prompts etc.
. Report design
It is generated in result of our inputs to watch out and analyze the results. Several reports can be generated on the requirements of the customer. In this phase format of reports are designed. Format include the number of columns, rows, date and time, report style, font size and color, from which portion of data it is to be generated, comments etc.
. Testing
After completion of the database, there is need to test the whole database for achieving maximum quality and efficiency. Testing is done for ultimate correctness of SQL commands, data items, feeded data, generated tables, reports, file organization, screen design etc. Careful testing will minimize the expense of later modifications.
. Handover
The last phase of the life cycle of relational database is the handover of complete data base. It is done after complete checking and modifications, testing all applications and facilities provided in the software.
How ER diagrams are created?

An ER model is a detailed logical representation of data of an organization. It shows the association of different entities, attributes of an organization and the graphical representation of ER model is called ER diagram.

Important terms

.Primary Key
     A key which helps to access any record uniquely. This key should be unique, not null and can't be duplicated.
.Composite Key
     When more than one keys combinely acts as a primary key is called composite key.
.Foreign Key
     A non key which acts as a primary key in an other report.
.Non Key
     A key which is not primary in table is called a non key.
.Candidate Key
     A key which has the ability to be the primary or foreign key.
.Existence Dependency
     An instance of one entity can not exists without the existence of an instance of some other related entity.
.Weak Entity
     An entity having existence dependency is called weak entity.



The graphical shapes that are used in ER diagrams.

Entity Relation Attribute Attribute with primary key Attribute with foreign key Multi Valued attribute Gerand


Relationship
It is the association between the instances of one or more entity type that is of interest to the organization.

Degree of Relationship
It is the number of entity type that take part in an association or relationship.

Types of Relationship
                    . Unary relationship.
                    . Binary relationship.
                    . Ternary relationship.
                    . IS A relationship.

. Unary relationship.
The relationship that exists between the instances of single entity type.

. Binary relationship.
The relationship that exists between the instance of two entity types.
. Ternary relationship.
The relationship between the instances of three entities.
. IS A relationship.
It is the relationship between supper type and sub type.

Sub type:

A sub set of supper type that share common properties (attributes) or relationship distinct from other sub sets.

Supper type:

A generic entity type that is subdivided into subtypes.



Cardinality
The number of instances of entity B that can be associated with each instance of entity A.

Types of Cardinality
                    . Mandatory cardinality
                    . Optional cardinality
                    . Many cardinality
                    . Optional Many or Zero cardinality

. Mandatory cardinality

. Optional cardinality

. Many cardinality

. Optional many or zero cardinality

Maximum Cardinality
Maximum cardinality of a relationship is the maximum number of instances that can be associated with each instance of entity A.
Minimum Cardinality
Minimum cardinality of a relationship is the minimum number of instances that can be associated with each instance of entity A.

How normalization is made?

The process of converting the complexed data structures into simple and stable data structures.
There are five phases of normalization.

1st Normal Form
In first normal form or state, the repeating groups are removed.

2nd Normal Form
A table or relation is in 2nd normal form, if it is in first normal form and every non-key attribute on primary key. Thus no non-key attribute is functionally dependent on part of primary key. In short partial dependencies are removed.

3rd Normal Form
A relation is in third normal form, if it is in 2nd normal form and no transitive dependencies exist.

4th Normal Form
A relation is in 4th normal form, if it is in 3rd normal form and multi valued dependencies are removed.

5th Normal Form
A relation is 5th normal form, if it is in 4th normal form and remaining anomalies are removed.

Important Terms

. Anomalies
Errors or inconsistencies that may result when a user attempts to update a table that contains redundant data.

. Partial Functional Dependency
A dependency in which one or more non-key attributes are functionally dependent on part (but not all) of the primary key.

. Transitive Dependency
A functional dependency between two or more non-key attributes in a relation.

. Functional Dependency
A particular relationship between two attributes. For any relation 'R' attribute 'B' is functionally dependent on attribute 'A', if for every valid instance of 'A' that value of A uniquely determines the value of 'B'. The functional dependency of attribute 'B'on attribute 'A' is represented as A->B.


Software?| Software Types| Software Cycles| How to Design?|
Backend| Frontend| Software Docs| Software Features|
Soft Web Links| Refreshment| About|