data designs (software engg.)

13
Data Designs. Software Engineering.

Upload: arun-shukla

Post on 13-Apr-2017

127 views

Category:

Engineering


2 download

TRANSCRIPT

Page 1: Data Designs (Software Engg.)

Data Designs. Software Engineering.

Page 2: Data Designs (Software Engg.)

KEY CONCEPTS DATA : Data describes a real-world information

resource that is important to your application. Data describes the things, people, products, items, customers, assets, records, and — ultimately — data structures that your application finds useful to categorize, organize, and maintain.

DESIGN : has been described as a multistep process in which representations of data and program structure, interface characteristics, and procedural detail are synthesized from information requirements. In general we can say that the DESIGN IS INFORMATION DRIVEN.

Page 3: Data Designs (Software Engg.)

SOFTWARE ARCHITECTURE : of a program or computing system is the structure or structures of the system, which comprise software components, the externally visible properties of those components, and the relationship among them. The architecture is not the operational software rather is a representation that enables to :

Analyze the effectiveness of the design in meeting its stated requirements.Consider architectural alternatives and,

Reduce risks associated with the construction of the software.

Page 4: Data Designs (Software Engg.)

Now, what does the term “software components” means ?

In the context of architectural design, a software component can be something as simple as a program module or an object-oriented class but,

It can also be extended to include databases and can also enable the configuration of a network of clients and servers.

Page 5: Data Designs (Software Engg.)

Software Architecture considers two levels of the design pyramid :

Architectural Design

Data/class Design

Page 6: Data Designs (Software Engg.)

DATA DESIGN The data design action translates data objects into

data structures at the software component level.

Data Design is the first and most important design activity. Here the main issue is to select the appropriate data structure i.e. the data design focuses on the definition of data structures.

Data design is a process of gradual refinement, from the coarse "What data does your application require?" to the precise data structures and processes that provide it. With a good data design, your application's data access is fast, easily maintained, and can gracefully accept future data enhancements.

Page 7: Data Designs (Software Engg.)

Data Design Includes : Identifying the data.

Defining specific data types & storage mechanisms.

Insuring data integrity by using business rules and other run-time enforcement mechanisms.

Page 8: Data Designs (Software Engg.)

Data Design at the Architectural Level. The challenge is to extract useful

information from dozens of databases serving many applications encompassing hundreds of gigabytes of data, particularly when the information desired is cross functional.

To combat this challenge data mining techniques, also called KNOWLEDGE DISCOVERY IN DATABASES (KDD) are developed, that navigate through existing databases in order to extract appropriate business-level information.

Page 9: Data Designs (Software Engg.)

An Alternative solution called DATA WAREHOUSE, adds additional layer to data architecture. Data Warehouse is a separate data environment that is not directly integrated with day to day applications but encompasses all data used by a business. In a way it is a large, independent database that access to the data that are stored in databases that serve the set if applications required by a business.

Page 10: Data Designs (Software Engg.)

Data Design at the Component Level.

Data Design at the component level focuses on the representation of data structures that are directly accessed by one or more software components.

Page 11: Data Designs (Software Engg.)

What Actually these Architectural and component level elements mean ? The ARCHITECTURAL DESIGN for the

software is equivalent to the floor plan of a house, which depicts the overall layout of the rooms, their size, shape, and relationship to one another.

ARCHITECTURAL DESIGN ELEMENTS gives us an overall view of the software.

Page 12: Data Designs (Software Engg.)

COMPONENT DESIGN for the software is equivalent to the set of detailed drawings for each room in the house. These drawings depict wiring and plumbing within each room, the switches, showers, tubs, drain, the flooring to be used and every other detail related with the room.

COMPONENT LEVEL DESIGN ELEMENTS for software fully define the internal detail of each software component.

Page 13: Data Designs (Software Engg.)

Thank You All !

HAPPY LEARNING ARUN SHUKLA

[email protected]