{Author Name [first-name middle-name-initials last-name]}
{Institution Affiliation [name of Author’s institute]}
Database and Programming Design 3
- Database and Programming Design
Design is a very important step for any software or database project. An important area for any organization is to extract information from raw data. Relational database systems are a standard for most transactions in various organizations. The database schema is the base for any relational database. The schema classifies tables, relationships, views and indexes. The schema must be formed keeping in view the business and workflow of the organization.
- Software Architecture
Designing software architecture is a bit complicated task. Bigger the size of the system, higher the complexity of the software systems, that may go beyond data and algorithms data structures. Designing the overall system structure appears as a new class of dilemma.
The software architecture is a picture of a system that facilitates the concept of its behavior and functionality. Architecture represents an indispensable organization of a system that consists of its machinery, ideology of its designing and development and their associations with each other. Software architecture represents a glimpse of the project as well as the whole system and characterizes that how the work assignments can be attained through following the design and implementation prospects. Software development project always targets a scalable and stable product that requires a solid architecture (Rumbaugh et al., 1991).
Below points are important for architectural design
- The introductory or initial parts act as the root of the system, so this significant part of the architecture may predict the unseen threat if something goes erroneous.
- The sections of the architecture that are compatible and can be redesigned till end with minimal collision.
- The recognition of all the layers is very crucial and similar the interaction with each other.
- Procedure of testing and test cases.
The scheming and developing phase initials need additional attention and should be vigilantly commenced after the consideration of architecture. Architecture presents a big picture and replicates a view of a software product which will act as a basis of development and maintenance as a stable creation.
MarketPlace Software is designed on the basis on MVP design pattern. A three Layered Architecture project is the foundation of this project. Layers facilitate the development of the product in such a way that classes can be set into divided layers. Each layer has a specific purpose and seclusion of each simplifies the process of designing.
Layer distribution
It is a three-layered system that includes Presentation Layer, business layer and data access layer. Presentation Layer presents the interactive User Interface, business Layer contains the business logic and interacts with the database via Data Access Layer. While, data access layer performs the act of interface between business Logic and the underlying database. It utilizes jdbc or specific database drivers while connecting to the database.
Model
Models entities hold the data. It is like a reservoir of information and transfers the information between the three layers.
Extensibility and Scalability
The application is customized in such a way that can be extended in terms of the structure and user interface. Its flexibility allows the addition of new components with the minimal refraction of design and code changes required.
Representation of a N-Tier Software Architecture
- Database Design and Schema
The advantages of a relational-database creation are abundant. An organization’s information becomes reliable and easily available through its development. It provides a base for improved decision making and now it has become a necessity of a triumphant organization. It should be compatible and adaptive to any modification. A data warehouse must be protected and strong enough to shield all the informative possessions.
A schema is a rational depiction of a complete database. The schema contains all the data names, types and its description along with all linked data-items and aggregates. The conventional database utilizes relational-database model (Halpin, 1996).
An entity relationship diagram (Figure1, Appendix) depicts the relational database model that has been created for the database design of the data warehouse. The ER Diagram depicts the relationship between all tables. It also shows a view that is created by combining information from different tables. View is not a physical table, but a logical table that is created through a query. All the tables are in third normal form.
- Database Queries
Database queries are an important element for interacting with the database. Queries are used for reporting purpose and extracting meaningful information from a relational database.
Below are some of the queries used for extracting information from the database.
Query to fetch Supplier Information:
Query Using Join with two tables for fetching Information:
Query to get all Purchase Order
- User Interface Design
The below interaction diagram shows the flow of screens and the interaction of view with Model beans.
- User Interface Screens
- Data Flow Diagram (DFD)
A Data Flow Diagram (Figure2, Appendix) depicts the flow of data and capturing of the data for process flow. The DFD depicts the process of User browsing through Supplier information and placing orders. In the interim, various operations and transactions take place that are captured in various database tables.
- Project Plan
Microsoft Project 2013 is used to develop a project plan. The file (ProjectPlan.mpp) consists of various tasks with sub-tasks and timeline that will monitor the progress of the database design. The Appendix (Figure3, Appendix) depicts a picture of the project plan. The plan consists of nine tasks, and each task consists of several subtasks that define the timeline for the project completion.
Reference
Halpin, T. (1996). Conceptual schema and relational database design. Prentice-Hall, Inc.
Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F., & Lorensen, W. E. (1991).
Object-oriented modeling and design (Vol. 199, No. 1). Englewood Cliffs, NJ: Prentice-hall.
- Appendix
Figure1: ER Diagram
Figure2: Data Flow Diagram (DFD)
Figure3: Project Plan: Gant Chart