System Design:
Software design sits at the
technical kernel of the software engineering process and is applied regardless
of the development paradigm and area of application. Design is the first step
in the development phase for any engineered product or system. The designer’s
goal is to produce a model or representation of an entity that will later be
built. Beginning, once system requirement have been specified and analyzed,
system design is the first of the three technical activities -design, code and
test that is required to build and verify software.
The importance can be stated with a
single word “Quality”. Design is the place where quality is fostered in
software development. Design provides us with representations of software that
can assess for quality. Design is the only way that we can accurately translate
a customer’s view into a finished software product or system. Software design
serves as a foundation for all the software engineering steps that follow.
Without a strong design we risk building an unstable system – one that will be
difficult to test, one whose quality cannot be assessed until the last stage.
During design, progressive
refinement of data structure, program structure, and procedural details are
developed reviewed and documented. System design can be viewed from either
technical or project management perspective. From the technical point of view,
design is comprised of four activities – architectural design, data structure
design, interface design and procedural design.
Normalization:
It
is a process of converting a relation to a standard form. The process is used to handle the problems
that can arise due to data redundancy i.e. repetition of data in the database,
maintain data integrity as well as handling problems that can arise due to
insertion, updation, deletion anomalies.
Decomposing is the process of
splitting relations into multiple relations to eliminate anomalies and maintain
anomalies and maintain data integrity.
To do this we use normal forms or rules for structuring relation.
Insertion anomaly: Inability to add data to the
database due to absence of other data.
Deletion
anomaly:
Unintended loss of data due to deletion of other data.
Update
anomaly:
Data inconsistency resulting from data redundancy and partial update
Normal
Forms: These are the rules for structuring relations
that eliminate anomalies.
FIRST
NORMAL FORM:
A relation is said to be in first
normal form if the values in the relation are atomic for every attribute in the
relation. By this we mean simply that no
attribute value can be a set of values or, as it is sometimes expressed, a
repeating group.
SECOND NORMAL FORM:
A relation is said to be in second Normal form is it is in
first normal form and it should satisfy any one of the following rules.
1) Primary key is a not a
composite primary key
2) No non key attributes
are present
3) Every non key attribute
is fully functionally dependent on full set of primary key.
THIRD
NORMAL FORM:
A relation is said to be in third
normal form if their exits no transitive dependencies.
Transitive Dependency: If two non key attributes depend on each
other as well as on the primary key then they are said to be transitively
dependent.
The above normalization principles
were applied to decompose the data in multiple tables thereby making the data
to be maintained in a consistent state.
0 comments:
Post a Comment