Upload
sharath-daniel
View
41
Download
7
Embed Size (px)
Citation preview
MENU CHART
Menu design is a data flow methodology. The graphical representation of data flow, Communication & defining the modules & their relationship with each is known as menu Chart. This method decomposes & modularizes the system so that complexity & manageability will come down. Thus reducing the intuitive reasoning&promotes the maintainable provable systems.
Menu chart shows how variables pass between variables modules in a computer.Each task can be associated with structured chart representation. For large system several levels of structured will be needed to reflect the number and complexity of the module in the system irrespective of whether multiprocessing or multitasking is in use. The relationships between modules are shown by calls. The existence and direction of the call indicates that a module has shown by calls. The existence and direction of the call indicates that a module has means to call other module and that at run time the module may call other module 0 or more times. Typically, the structured contains a hierarchy of modules which is used to show how one module will call another. As module calls normally involves the passage and return of parameters, the menu chart depicts these with couples of data and controls which are provided that indicate the passage or return of data or some value that controls the operation of the recipient module.
System menu chart
Online Movie Reservation
Movie mgt Reservation mgt User mgt Theatre mgt
Add movie
Send feedback
Theatre registration
Movie request
View feedback
Show movie assigning
Add show
Seat information
Add movie
User registration
History
Payment
Reservation
View payment details
Add cost
Show and movie assigning
Voting
Approve theatre
Change password
Change password
Send feedback
DATA FLOW DIAGRAM
Data Flow Diagram (DFD) is an important tool used by system analysts. DFD provide an overview of what data a system would process, what transformation of data are done, what files are used and where the results flow. The graphical representation of the system makes it a good communication tool between the user and the analyst.
Analysis model helps us to understand the relationship between different components in the design. Analysis model shows the user clearly, how a system will function. This is the first technical representation of the system. The analysis modeling must achieve three primary objectives.
To establish a basis for creation of software design To describe what the user requires To define set of requirements that can be validated once the software is built.
A data flow diagram is a graphical technique that depicts information flow and transforms that are applied as data move from input to output. The DFD is used to represent increasing information flow and functional details. A level 0 DFD, also called fundamental system model or a Context model, represents the entire software elements as single bible with input and output indicated by incoming and outgoing arrows respectively. Additional process and information flow parts are represented in the next level i.e., Level 1 DFD.Each of the process represented at level 1 are sub function of overall system depicted in the Context model. Any process which are complex in level 1, will be farther represented into sub function in the next level,i.e,in Level2.DefinitionData flow diagram is a means of representing system at any level of detail with a graphic network of symbols showing data stores, data process and data sources or destinations.Data Flow Diagram Principles
A system can be decomposed into subsystems, and subsystems can be further decomposed into lower level subsystems.
Each subsystem represents a process or activity in which data is processed. At the lowest level, process can no longer be decomposed. Each ‘process’ has the characteristics of a system.A process must have input and
output. Data enters the system from the environment,data flows between processes within
the system and data is produced as output from the system.
Purpose or ObjectiveThe purpose of data flow diagram is to provide a semantic bridge between users and
systems developers. The diagrams are graphical, eliminating thousands of words, logical representations, modeling what system does; Hierarchical, showing systems at any level of details; and jargon less, allowing user understanding and reviewing.
The goal of data flow diagramming is to have a commonly understand model of a system. The diagram is the basis of structures system analysis. Data flow diagram is supported by other techniques of structured systems analysis such as data structured diagrams, data dictionaries and procedure representing techniquessuch as decision table trees and structured English.
The basic elements of DFD are
Process: A process represents some amount of work being performed on data.Circle or bubble
External Entity: This represents any outside agency, which interact with the system. It represents the source or destination of data for the system under consideration. Rectangle
Dataflow: The dataflow portrays an interface among different components in a DFD.It represents flow of data between two process or between a process and an external entity or between a process and a data store.Arrows
Data store: A data store is a place for holding information within the system. Here data is stored or referenced by a process in the system. Open-ended rectangle.
Rules while drawing DFDs(1) Process should be named and numbered for easy reference.(2) The direction of flow is from top to bottom and from left to right. Data
traditionally flow from the source to the destination although they may flow back to a source.
(3) When a process is exploded into lower level details, they are numbered.(4) The names of data stores, sources and destination are written in capital letters.
Online Movie ReservationUser
Request
Response
Level 0 DFD
Context level diagram
Level 1 DFD
Login
Login
User mgt
Reservation mgt
Movie mgt
theatre mgt
user info
theatre info
movie info
resevation info
User
Addmovie
Reservation
User_reg
U_id
th_reg
th_id
m_name
m_id
th_id
Level 2 DFD of movie mgt
Add movie
Show_movie assign
Add show
Add cost
Show
Movie_show
Add show
Cost
sh_id
show details
assigning details
Movie_id
Movie details
Cost details
assigning sh_id
Level 2 DFD of theatre mgt
Movie info
Seat info
Send feedback
View feedback
movie_request
Seat info
Feedback
Payment
Movie detail
Seat details
Feedback details
payment details
User
Voting
Send Feedback
Voting
Feedback
Voting details
Feedback
User info
User info
Level 2 DFD of user mgt
Level 2 DFD of reservation mgt
Reservation
History
Reservation
User details
Reservation details
u_id
u_id
Report
SYSTEM FLOW CHARTA system flow chart, or data flow chart, is used to describe the flow of data through a
complete data processing system. Different graphic symbols represent the clerical operations may indicate the specific programs used, no details are given of how the programs process the data.
A program flow chart is used to describe the flow of data though a particular computer program, showing the exact sequence of operations performed by that program in order to process the data. Different graphic symbols are used to represent data input and output, decisions, branches, and subordinates.
The flowchart is a means of visually presenting the flow of data through an information processing systems, the operations performed within the system and the sequence in which they are performed.
A flowchart is a diagrammatic representation that illustrates the sequence of operations to be performed to get the solution of a problem. Flowcharts are generally drawn in the early stages of formulating computer solutions. Flowcharts are generally communication between programmers and business people. These flowcharts play a vital role in the programming of a problem and are quite helpful in understanding the logic of complicated and lengthy problems.
SymbolsAtypical flowchart may have the following kinds of basic symbols:
Start and End Symbol:Start and end symbols, represented as lozenges, ovals or rounded rectangles, usually
containing the word ”Start” or “end”. Or another phrase signaling the start or end of a process, such as “submit enquiry” or “receive product”.
Arrows:Arrows, showing what is flow of controlling computer science. An arrow coming from
one symbol and ending at another symbol represents that control passes to the symbol the arrow points to.Processing Steps:
Processing steps, represented as rectangles. Examples:”Add 1 to X”;”replace identified part”;savechanges”or similar.
Input/output:Input/output, represented as parellelogram.Examples:Get X from the user; display X.
Conditional or Decision: Conditional (or decision), represented as a diamond (rhombus). These typically contain a
Yes/No question or True/False test. This symbol is unique in that it has two arrows coming out of it, usually from the bottom point and right point, one corresponding to Yes or True, and one corresponding to No or False. The arrows should always be labeled. More than two arrows can be ued,but this is normally a clear indicator that a complex decision is being taken, in which case it may need to be broken-down further, or replaced with the “pre-defined” symbol.
Guideline for drawing flowchart Flowchart are usually drawn using some standard symbols;however,some special symbols can also be developed when required.
In drawing a proper flowchart, all necessary requirements should be listed out in logical order.
The flowchart should be clear, neat and easy to follow. There should not be any room for ambiguity I understanding the flowchart.
The usual direction of the flow of a procedure or system is from left to right or top to bottom.
Only one flow line should come out from a process symbol. Only one flow line should enter a decision symbol, but two or three flow lines, one for
each possible answer, should leave the decision symbol. Only one flow line is used in conjunction with terminal symbol. Write within standard symbols briefly. As necessary , you can use the annotation symbol
to describe data or computational steps more clearly. If the flowchart becomes complex, it is better way of communication. Ensure that the flowchart has a logical start and finish. It is useful to test the validity of the flowchart by passing through it with a simple test
data.
The advantages of flowcharts are as follows Communication: flowcharts are better way of communicating the logic of a system to all
concerned. Effective analysis: with the help of flowchart, problem can be analyzed in more effective
way. Proper documentation: program flowcharts serve as a good program documentation,
which is needed for various purposes. Efficient coding: the flowchart act as a guide or blueprint during the systems analysis and
program development phase. Proper debugging: the flowchart helps in debugging process. Efficient Program Maintenance: the maintenance of operating becomes easy with the
help of flowcharts. It helps the programmer to put efforts more efficiently on the part.
FLOWCHART
ER DIAGRAMAn entity-relationship (ER) diagram is specialised graphic that illustrates the
interrelationships between entities in a database.ER diagrams often used symbols to represent 3 different types of information. Boxes are commonly used to represent entity. Diamonds are normally used to represent relationships and ovals are used to represent attributes. Also called an entity-relationship model, a graphical representation of entity and their relationships to each other, typically used in computing in regard to the organization of data within database or information systems. An entity is a piece of data an object or concept about which data is stored, a relationship is how the data is shared between entities.Classifying Relationships
Relationships are classified by their degree, connectivity, cardinality, direction, type, and existence. Not all modeling methodologies use all these classifications.Degree of a Relationship
The degree of a relationship is the number of entities associated with the relationship. The n-ary relationship is the general form for degree n. Special cases are the binary, ternary, where the degree is 2, and 3, respectively.
Binary relationships, the association between two entities are the most common type in the real world. A recursive binary relationship occurs when an entity is related o itself. An example might be "some employees are married to other employees".
A ternary relationship involves the three entities and is used when a binary relationship is inadequate. Many modeling approaches recognize only binary relationships. Ternary or n-ary relationships are decomposed into two or more binary relationships.Connectivity and Cardinality
The connectivity of a relationship describes the mapping of associated entity instances in the relationship. The values of connectivity are "one" or "many". The cardinality of a relationship is the actual number of related occurrences for each of the two entities. The basic types of connectivity of the relations are: one-to-one, one-to-many, many-to-many. A one-to-one (1:1): is when at most one instance of an entity A is associated with one instance of entity B. for example:
• Employees in a company are each assigned their own office.• For each employee there exists a unique office and for each office there exists a unique
employee.A one-to-many (1:N): is when for one instance of entity A, there are zero, one, or many instances of entityB, but for one instance of entity B, there is only one instance of entity A. for example:
• A department has many employees.• Each employee is assigned to one department.
A many-to-many (M:N): relationship, sometimes called non-specific, is when for one instance of entity A, there are zero, one, or many instances of entity B and for one instance of entity B there are zero, one, or many instances of entity A. for example:
• Employees can be assigned to no more than two projects at the same time.• Projects must have assigned at least three employees.
The symbols used are
Entity
Attributes
Relationship
Cost
Sh_id Seat_info
Date_toCost_id
Depended Movie req
Date
Th_id M_name
Select Add movie
Language
M_id M_name
Has
Show
Sh_id
Show
Time
Has
Feedback
U_idFeedback
Depended
Voting
Reservation Has
M_id
U_id
Votting
Seate_wantedU_id
T_id
DependedSeat_info
Pay_id
Th_id
No_of_seat
Seat_type
Has
Date_of_pay
PaymentAmt
U_id
Lines
ERDIAGRAM
DATABASE DESIGNA database is a collection of interrelated data stored with minimum redundancy to server
many users quickly and effectively. The database serves as the repository of data, so a well designed database can lead to a better program structure and reduce procedural complexity. In a database environment, common data are available and used by several users.
Database design is considered as a standard for management information systems and is available virtually for every computer system.
The general theme behind a database is to handle information as an integrated whole. A database is a collection of interrelated data stored with minimum redundancy to serve many users quickly and effectively. After designing input and output, the analyst must concentrate on database design or how data should be organized around user requirements. The general objective is to make information access, easy quick, inexpensive and flexible for other users. During database design the following objectives are concerned: -
Controlled Redundancy Ease of learning and use Data independence More information at low cost Accurate and integrating Recovery from failure Privacy and security Performance
SPECIFIC OBJECTIVES IN DATABASE DESIGN ARE EXPLAINED BELOW:
Controlled RedundancyA unique aspect of database is storing data only once, which controls redundancy and improves system performance.
Ease of learning and useDatabase should be modified without interfering with established ways of using data.
Data independenceIt refers to the ability to add new data without rewriting an application program.
More information at low costUsing, storing and modifying more information at low cost is important.
Accuracy and integrityThe accuracy of database ensures that data quality and content remain constant. Integrity controls detect data inaccuracies when they occur.
Recovery from failuresWith multi-user access to a database, the system must recover quickly after it is down with no loss of transaction.
Privacy and SecurityDatabase should be prevented from unauthorized access. Users must be positively identified and their action monitored.
Performance
This emphasizes on the response time to enquire suitable to the use of data.
KEYA Key is column or column used to identify rows: it is not as same as an index
Primary Key: The primary key is the column(s) used to uniquely identify, the values of which uniquely identify each row of the table. The primary key of a relational table uniquely identifies each record in the table. It can either be a normal attribute that is guaranteed to be unique (such as Social Security Number in a table with no more than one record per person) or it can be generated by the DBMS (such as a globally unique identifier, or GUID, in Microsoft SQL Server). Primary keys may consist of a single attribute or multiple attributes in combination.
Candidate Key: A candidate key is a combination of one or more columns, the values of which uniquely identify each row of the table. A candidate key is a combination of attributes that can be uniquely used to identify a database record without any extraneous data. Each table may have one or more candidate keys. One of these candidate keys is selected as the table primary key. The candidate keys of a relation tell us all the possible ways we can identify its tuples. As such they are an important concept for the design database schema.For practical reasons RDBMSs usually require that for each relation one of its candidate keys is declared as the primary key, which means that it is considered as the preferred way to identify individual tuples. Foreign keys, for example, are usually required to reference such a primary key and not any of the other candidate keys.
Foreign Key: A foreign key is one or more column whose value is based on the primary or candidate key values from another. A foreign key is a field in a relational table that matches the primary key of another table. The foreign key can be used to cross-reference tables. The foreign key identifies a column or a set of columns in one (referencing) table that refers to a set of columns in another (referenced) table. The columns in the referencing table must be the primary key or other candidate key in the referenced table. The values in one row of the referencing columns must occur in a single row in the referenced table. Thus, a row in the referencing table cannot contain values that don't exist in the referenced table (except potentially NULL). This way references can be made to link information together and it is an essential part of database normalization. Multiple rows in the referencing table may refer to the same row in the referenced table. Most of the time, it reflects the one (parent table or referenced table) to many (child table, or referencing table) relationship. The referencing and referenced table may be the same table, i.e. the foreign key refers back to the same table. Such a foreign key is known in SQL:2003 as a self-referencing or recursive foreign key. A table may have multiple foreign keys, and each foreign key can have a different referenced table. Each foreign key is enforced independently by the database system. Therefore, cascading relationships between tables can be established using foreign keys. Improper foreign key/primary key relationships or not enforcing those relationships are often the source of many database
and data modeling problems. Unique Key: A unique is a one or more column that must be unique for row of table.
Unique is allowed to be null.
Login
Field Name Data Type Size Constraints Descriptionusername Varchar 15 Not null Usernamepassword Varchar 15 Not null Passwordtype int 5 Not null User/Theatre Manager/Admin
User regField Name Data Type Size Constrains Descriptionuser_nameuser_passuser_id
VarcharVarcharInt
15156
Not nullNot nullPrimary key
User nameUser passwordUser identity
first_namelast_name
VarcharVarchar
1515
Not nullNot null
First nameLast name
gender Varchar 6 Not null User genderdob Varchar 10 Not null User date of birthmob_num Numeric 10 Not null Mobile numberemail_id Varchar 20 Not null Email addressquestion Varchar 20 Not null Security Questionanswer Varchar 20 Not null Answer
ShowField Name Data Type Size Constrains DescriptionSh_id Int 6 Primary key Show IdentitytheatreidShow
intVarchar
610
Not nullNot null
Show theatreShow Name
Time Varchar 10 Not null Time of show
Add MovieField Name Data Type Size Constrains DescriptionMovieid int 6 Primary key Movie IdentityMoviename Varchar 25 Not null Movie NameLanguage Varchar 25 Not null Movie
LanguageDirector Varchar 15 Not null DirectorCast&Crew Varchar 100 Not null Cast&CrewMusic Varchar 15 Not null MusicPlot Varchar 25 Not null PlotLength Varchar 10 Not null Lengtof Movie
Release_dateImg
DatetimeNvarchar 5
Not nullNot null
ReleasingDateImage
Add CostField Name Data Type Size Constrains DescriptionCost_id Int 6 Primary key Cost IdentityThaetreid int 6 Not null Theatre identitySeat _type Varchar 10 Not null Type of seatAmount int 3 Not null Amount
Movie RequestField Name Data Type Size Constrains DescriptionReqid
Theatre_id
M_nameLanguage
int
Int
VarcharVarchar
10
10
2525
Primary key
Foreign key
Not nullNot null
Request identityRequest IdentityMovie nameLanguage
Director Varchar 20 Not null directorCast&Crew Varchar 50 Not null Cast and crew
Show movieField Name Data Type Size Constrains DescriptionShow_movieid
Sh_id
Int
Int
6
6
Primary key
Foreign key
Show movie IdentityShow identity
M_id Int 6 Foreign key Movie IdentityStart_date datetime Not null Starting dateEnd_dateSeattypeAmount
DatetimeVarcharDecimal
106
Not nullNot nullNot null
Ending dateSeat typeAmount
Theatre regField Name Data Type Size Constrains DescriptionTh_id int 6 Primary key Theatre IdentityTh_name Varchar 20 Not null Theatre NameLocation Varchar 15 Not null LocationAddress Varchar 50 Not null AddressContact_no Varchar 10 Not null Contact numberNo_of_seat Int 4 Not null No of Seat
Licence_no Varchar 15 Not null Licence Number
Class Varchar 6 Not null A,B,C ClassDateStatusUsername
DatetimeIntVarchar
6 20
Not nullNot nullNot null
DateStatusUser name
Seat_InformationField Name Data Type Size Constrains DescriptionTh_id int 6 Primary key Theatre IdentitySeat_type varchar 50 Notnull Seat typeNo_of_seat int 4 Not null No of Seat
ReservationField Name Data Type Size Constrains DescriptionTicket_id int 6 Primary key Ticket IdentityUser_idMovie_idShowNo_of_seatsTheatre_id
IntIntVarcharVarcharInt
6620106
Foreign keyForeign keyNot nullNot nullNot null
User IdentityMovie identityShowNumber of seatsTheatre identity
Date_of_reser Datetime Not null Date of resrvationAmount Decimal 6 Not null Amount
FeedbackField Name Data Type Size Constrains DescriptionF_id int 6 Primary key Feedback IdentityU_id Int 6 Foreign key User IdentityFeedbackStatusType
VarcharVarcharInt
2001010
Not nullNot nullNot null
FeedbackStatusType
PaymentField Name Data Type Size Constrains DescriptionPay_id int 6 Primary key Payment
IdentityU_id Int 6 Foreign key User IdentityDate_of_pay Datetime Not null Date of
paymentAmt Bigint 4 Not null Amount
HistoryField Name Data Type Size Constrains DescriptionUser name Varchar 10 Primary key User identity
Movie Varchar 10 Not nul MovieDate Date time Not null DateTotal_seat Varchar 10 Not null Total seat
LocationField Name Data Type Size Constrains DescriptionLoc_id Int 6 Primary key Location identityLocation Varchar 20 Not null Location
User_voteField Name Data Type Size Constrains DescriptionUser_id Int 6 Primary key User idMovie_id Int 6 Forign key Movie idDate_of_vote Datetime Not null Date of vote
VottingField Name Data Type Size Constrains DescriptionMovie_id Int 6 Primary key Movie identityRate Int 6 Not null Rate
NORMALIZATIONDesigning a database is a complex task and the normalization theory is a useful aid in the
design process. The process of normalization is concerned with transformation of conceptual schema in to computer representation form.
There will be need for most databases to grow by adding new attributes and new relations. The data will be used in new ways.Tuples will be added and deleted. Information stored may undergo updating also. New association may also be added. In such situations the performance of a database entirely depends upon its design. A bad database design may lead to certain undesirable things like.
Repetition of information Inability to represent certain information Loss of information
To minimize these anomalies, Normalization may be used. If the database is in a normalized form, the data can be restructured, and the database can grow without, in most cases, forcing the rewriting of application programs. This is important because of the excessive and growing cost of maintaining an organization’s application programs and its data from the disrupting effects of database growth. As the quality of application programs increases, the cost of maintaining them without normalization will rise to prohibitive levels. A normalized database can also encompass many related activities of an organization thereby minimizing the need for rewriting the application s of programs. Thus normalization helps one attain a good database design and there by ensures continued efficiency of databaseNORMAL FORMS
First Normal Form: A relation is in first normal form (1 NF), if and only if all its attributes are based on single domain. The objective of normalizing a table is to remove its repeating groups and ensure that all entries of the resulting table have at most single value.
Second Normal Form: A table is said to be in second normal form (2 NF), when it is in 1 NF and every attribute in the record is functionally dependent upon the whole key, and not just a part of the key.
Third Normal Form: A relation is said to be in 3NF if and only if, for all the nontrivial dependencies in F of the form XA, either X contains a key (X is a super key) or A is the prime attribute. 3NF is achieved when transitive dependencies are removed from a record design. Some of the non-key attributes are dependent not only on the primary key but also on a non-key attribute.There are additional normalization levels such as Boyce-code Normal Form (BCNF),
fourth normal Form (4 NF) and fifth normal form (5 NF). While normalization makes databases more efficient into so many different tables. The tables in our system are normalized into third normal form.
BENEFITS OF NORMALIZATION Helps to simplify the structure of tables. To structure the data so that there is no repetition of data, that helps in saving spaces. To permit simple retrieval of data in response to query and report requests. To simplify the maintenance of data through updates, insertions and deletions. To reduce the need to restructure data when new application requirement arise. Greater overall database organization. Data consistency within the database. Much more flexible database design. A better handle on database security.
CLASS DIAGRAM
Class diagrams are widely used to describe the types of objects in a system and their relationships. Class diagrams model class structure and contents using design elements such as classes, packages, and objects. Class diagrams describe three different perspectives when designing a system, conceptual, specification, and implementation. These perspectives become evident as the diagram is created and help solidify the design.Class is composed of three things: a name, attributes, and operations.
A class diagram is an illustration of the relationships and source code dependencies among classes in the Unified Modeling Language (UML). In this context, a class defines the methods and variables in an object, which is a specific entity in a program or the unit of code representing that entity. Class diagrams are useful in all forms of object-oriented programming (OOP). The concept is several years old but has been refined as OOP modeling paradigms have evolved.
In a class diagram, the classes are arranged in groups that share common characteristics. A class diagram resembles a flowchart in which classes are portrayed as boxes, each box having three rectangles inside. The top rectangle contains the name of the class; the middle rectangle contains the attributes of the class; the lower rectangle contains the methods, also called operations, of the class. Lines, which may have arrows at one or both ends, connect the boxes. These lines define the relationships, also called associations, between the classes.
USECASE DIAGRAM
A use case is a set of scenarios that describing an interaction between user and system. A use case diagram displays the relationship among the actors and use cases. The two main components of a use case diagram are use cases and actors.
Actor Usecase
A use case is represents a user or another system that will interact with the system you are modeling. A use case is an external view of the system that represents action the user might perform in order to complete a task
Uses cases are used in almost every project. They are helpful in exposing requirements and planning the project. During the initial stage of a project most use cases should be defined, but as the project continues more might become visible.
A use case diagram in the Unified Modeling Language (UML) is a type of behavioral diagram defined by and created from a Use-case analysis. Its purpose is to present a graphical overview of the functionality provided by a system in terms of actors, their goals (represented as use cases), and any dependencies between those use cases. The main purpose of a use case diagram is to show what system functions are performed for which actor. Roles of the actors in the system can be depicted. Use Case diagrams are formally included in two modeling languages defined by the OMG: the Unified Modeling Language (UML) and the Systems Modeling Language (SysML).
Assume show movie
Add cost
Send feed back
Add show
Seat information
Change password
Movie request
Add movie
Registration
USE CASE DIAGRAM
Theatre mgt
Add movie
Assume show movie
Add cost
Send feed back
Add show
View payment details
View feed back
Approve theatre
Movie mgt
Payment
Reservation
HistoryReservation mgt
User mgt
Send feed back
Voting
Change password
User registration