Showing posts with label SOFTWARE ENGINEERING. Show all posts
Showing posts with label SOFTWARE ENGINEERING. Show all posts

Sunday, July 21, 2013



 DBMS



a. Data:
·         It is a collection of information.
·         The facts that can be recorded and which have implicit meaning known as 'data'.
·         Example:
                 Customer  ----- 1.cname.
                                               2.cno.
                                               3.ccity.
b. Database:
·         It is a collection of interrelated data.
·         These can be stored in the form of tables.
·         A database can be of any size and varying complexity.
·         A database may be generated and manipulated manually or it may be computerized.
·         Example:
 Customer database consists the fields as cname, cno, and ccity

Cname
Cno
Ccity




c. Database System:
1.What are the advantages of a database system over conventional file processing systems? (8 Marks, April-2000)

·         It is computerized system, whose overall purpose is to maintain the information and to make that the information is available on demand.

·         Advantages:
                  1.Redundency can be reduced.
                  2.Inconsistency can be avoided.
                  3.Data can be shared.
                  4.Standards can be enforced.
                  5.Security restrictions can be applied.
                  6.Integrity can be maintained.
                  7.Data gathering can be possible.
                  8.Requirements can be balanced.

d. Database Management System (DBMS):
1.What are the advantages of DBMS over File processing systems?
                       
File Processing System:
·         It is a collection of interrelated data and programs to access the data.
·         It is a collection of programs that enables users to create and maintain a database.
·         It is a 'General Purpose Software System’ that facilitates the processes of Defining, Constructing and Manipulating databases for various applications.

·         Advantages:
1.Data Independence.
2.Efficient Data Access.
3.Data Integrity and security.
4.Data administration.
5.Concurrent access and Crash recovery.
6.Reduced Application Development Time.

·         Dis-advantages:
1.Data Redundancy.
2.Data Inconsistency.
3.Difficulty in accessing the data.
4.Data Isolation.
5.Security Problems.

LEVELS OF DATA ABSTRACTION 


 T
his is also called as 'The Three-Schema Architecture’, which can be used to separate the user applications and the physical database.


1.Physical Level:
·         This is a lowest level, which describes how the data is actually stores.
·         Example:
                        Customer account database can be described.

2.Logical Level:
·         This is next higher level that describes what data and what relationships in the database.
·         Example:     
               Each record
                       type customer = record
                                   cust_name: sting;
                                         cust_city: string;
                                         cust_street: string;
                              end;

3.Conceptual (view) Level:
·         This is a lowest level, which describes entire database.
·         Example:
                        All application programs.
                       
DATA MODELS

·         The entire structure of a database can be described using a data model.
·         A data model is a collection of conceptual tools for describing
·         Data models can be classified into following types.
1.Object Based Logical Models.
2.Record Based Logical Models.
3.Physical Models.
Explanation is as below.

1.Object Based Logical Models:
·         These models can be used in describing the data at the logical and view levels.
·         These models are having flexible structuring capabilities classified into following types.
a.       The entity-relationship model.
b.      The object-oriented model.
c.       The semantic data model.
d.      The functional data model.

2.Record Based Logical Models:
·                     These models can also be used in describing the data at the logical and view levels.
·                     These models can be used for both to specify the overall logical structure of the database and a higher-level description.
·                     These models can be classified into,
1.   Relational model.
2.   Network model.
3.      Hierarchal model.

3. Physical Models:
·         These models can be used in describing the data at the lowest level, i.e. physical level.
·         These models can be classified into
a.       Unifying model
b.      Frame memory model
.

5.Entity Relational Model (E-R Model)
                     The E-R model can be used to describe the data involved in a real world enterprise in terms of objects and their relationships.
Uses:
·                     These models can be used in database design.
·                     It provides useful concepts that allow us to move from an informal  
               description to precise description.
·                     This model was developed to facilitate database design by allowing the specification of overall logical structure of a database.
·                     It is extremely useful in mapping the meanings and interactions of real world enterprises onto a conceptual schema.
·                     These models can be used for the conceptual design of database
                  applications.

Saturday, July 20, 2013


Software Engineering


Software Engineering is concerned with

  •  Technical processes of software development
  •  Software project management
  •  Development of tools, methods and theories to support software production
  •  Getting results of the required quality within the schedule and budget
  •  Often involves making compromises
  •  Often adopt a systematic and organized approach
  •  Less formal development is particularly appropriate for the development of web-based systems

Software Engineering is important because

  •  Individuals and society rely on advanced software systems
  •  Produce reliable and trustworthy systems economically and quickly
  •  Cheaper in the long run to use software engineering methods and techniques for softwaresystems


Fundamental activities being common to all software processes:


  •  Software specification: customers and engineers define software that is to be produced and the constraints on its operation
  •  Software development: software is designed and programmed
  •  Software validation: software is checked to ensure that it is what the customer requires
  •  Software evolution: software is modified to reflect changing customer and market requirements


Software Engineering is related to computer science and systems engineering:


 Computer science

o Concerned with theories and methods

 Software Engineering

o Practical problems of producing software

 Systems engineering

o Aspects of development and evolution of complex systems

o Specifying the system, defining its overall architecture, integrating the different parts to 

create the finished system


General issues that affect many different types of software:


 Heterogeneity

o Operate as distributed systems across networks

o Running on general-purpose computers and mobile phones

o Integrate new software with older legacy systems written in different programming 

languages
o Challenge: build dependable software that is flexible enough to cope with heterogeneity
 Business and social change
o Change existing software and rapidly develop new software
o Traditional software engineering techniques are time consuming
o Goal: reduce time to adapt to changing needs
 Security and trust
o Software is intertwined with all aspects of our lives
o See remote software systems (web page, web service interface)
o Make sure malicious users cannot attack software and information security is 
maintained
Essential attributes of good software
 Maintainability
 Dependability and security
 Efficiency
 Acceptability

Application types
 Stand-alone applications
 Interactive transaction-based applications
 Embedded control systems
 Batch processing systems
 Entertainment systems
 Systems for modeling and simulation
 Data collection systems