You are on page 1of 18

‫بسم الله الرحمن الرحيم‬

******System Design******
System Design: Is the preparation of the system specification in a detailed
computer based solution is called physical design.

System Architecture
 It defines the technology to be used to build the information system in
terms of data, processes, interfaces and network components.
 It define the framework of the system design and specifically should
answer the following questions:-

System Architecture
1. Will the system be centralized or distributed.
2. Will the system data store be centralized or distributed.
3. How much data store is required?
4. What data store technology is used?
5. Will the SW be purchased, built-in or both?
6. What technology will be used to write programs?
7. How user will interact with the system.
8. How data will be input.
9. How outputs will be generated.
10. How the system will interface with already existing systems.

******Input Design******

Input Design: The quality of the system inputs defines the quality of the
system.

Types of inputs
 Input form.
 Input screen.
 Web fills in form.

Electronic data conversion


 The cycle through which paper data can be converted into electronic data.
It contains three steps:
 Data capture: registration of paper data on a source docs.
 Data entry: entering data from source docs into electronic media.
 Data input: inputting data from electronic media into the DB system.

Data Data Data


Capture entry input DB

Disk

Source
Document

Batch versus online inputs


 Batch: input process include data capture, data entry, and data input
 On-line: input process includes capture and input data directly to the
computer using input screens.

 Online Input

Data Data
Capture input DB

Input design objectives:


 Making input completion easy and efficient.
 Assuring accurate input completion.
 Assuring the consistency between forms and related screens.
 Making the screen and forms attractive.
 Assuring input satisfy the system requirements.
 Inputs should fit the user.

 Notes on making the input completion easy and efficient:


 Input should be designed such that volume of input is minimized:
 Capture only variable data.
 Don't capture constants data that can be completed.
 Use codes for appropriate attributes, when possible.

 Source documents should be easy to handle, when it will be used:


 Include instructions.
 Minimize amount of handle.
 Keyed data should be squared (top – down – right - left).

 Assuring accurate input completion

 Internal controls:
 Monitoring number of inputs. (for both batch and on-line processing)
 Applying various recovery techniques such as:
 Completeness check.
 Limit/ Range check.
 Combination check.
 Picture check.
 --- Etc.

 External controls:
 Text box.
 Radio buttons.
 Check box.
 Combo box.

 General consideration:
 Clear and meaningful caption.
 List of choices should be ordered/ involving user.
 List of choices should be left justified/ right justified.
 Width of combo box is available for max width.
 Assume default values.

 Making screens & forms attractive

 Items should be arranged logically


 Leaving enough space for information to be entered
 Use different & appropriate fonts & colors

Internet & intranet page design guidelines:


 Use variety of text boxes, buttons, drop-down menus, check boxes and
radio buttons in the form.
 Provide clear usage instructions.
 Follow logical order to fill in page.
 Create feedback screen that refuses submission of the page until all
necessary information has been entered.
 Provide a scrolling text box whenever you are in certain about how much
spac3eis required by the costumer to fill in.
 If the pages are very lengthy, divide into separate pages.

Form contents
 Heading (Name, Address, Logo …)
 Identification and access (archiving code)
 Instructions for usage.
 Body (main part of the document).
 Signature & verification.
 Total.
 Issuing data
 Comments, if needed.

Screen contents
 Heading.
 Body
 Menus / buttons
 Instructions if needed
 Hyperlinks.

******Output Design******

Output: is the information delivered to the user through Intranet (LAN),


extranet (WAN), World Wide Web (www) or manually by hands.

Outputs can be on one of the following forms:-


 Printed reports. (printed or preprinted)
 Computer screens.
 Microforms. (microfilm, micro flash, …)
 Audio outputs.
 Web pages

Output Design Objectives can be:


 Should cover system requirements.
 should fit the user
 Output should be delivered in appropriate quantity.
 Output should be delivered in appropriate place (where needed).
 Output should be delivered in appropriate time (when needed)
 Choosing the right output form (type)

 Should cover system requirements.


 Output should perform a specific function.
 It should be defined according to system requirements.
 Should fit the user.
 To design user customized output.
 Output should address the user needs.
 Output should be delivered in appropriate quantity.
 System should provide user appropriate quantity of output to
achieve his work.
 Keep the decision maker to decide quantities of output required.
 Output should be delivered in appropriate place (where needed).
 To insure the output is generated in the appropriate place.
 To insure the output is generated in the appropriate place to the
right user.
 Output should be delivered in appropriate time (when needed).
 Providing output on time guarantee the high performance of the
organization.
 Keep the decision maker involved to decide time provision of the
outputs.
 Choosing the right output method according to the nature of the
information system.

Output screen design guidelines:


 Keep the screen simple
 Keep the screen presentation constant
 Facilitate user moment among screens
 Create an attractive screens
 Refer to input screen design
 Graphics can be included but the following should be defied:
 Purpose of the graph
 Kind of the data to be presented
 Audience of he graph

Web sites considerations


 Use professional tools.
To optimize time, quality, & performance
 Study other websites (professional and poor).
 To analysis their elements & how they are functioning
 To define weak points in the professional one
 Then create a model prototype for your own
 Use website evaluation forms.
To distinguish weak & string points in your site & put an evaluation plan
 Consult books
To enrich your knowledge about websites design & information
 Rationalize
The usage of plug-ins audio & video to encourage the visitors to your site
 Plan ahead for your site, to define & cover:
 Structure.
 Contents.
 Graphics.
 Text.
 Presentation.
 Navigation.
 Promotion.
 Maintenance.

******User Interface******

User Interface: Is the set of screens that represents the dialogue between
the user and the computer that leads to achieve a user request.

User Interface has two basic components:


 Presentation language
 Action language

Types of user interface can be:


 Natural language interface
 Question & answers interface
 Menu interface
 Form fill inter face
 Command language interface
 Graphical user interface
 Other interfaces
 Natural language interface
 It is dream & ideal interface but not yet completely implemented.
 It is suitable to inexperienced users (no skill is needed).
 It is designed to use natural language.
 Question & answers interface
 It has 2 types :
 Receive answer as a "text" & accordingly do the required
processing.
 Receive answer as a "button" & appropriate processing
accordingly.
 Menu interface
 It has 4 types :
 List of items
 Pull-down menus
 Nested pull-down menu
 Pop-up menus

 List of items
 Menu with a lot of items which displayed the user is limited to a
defined number of choices.
 The user selects one choice by key based on mouse.
 The system receives the choice and designate its nature & be
appropriate processing accordingly
 Pull-down menus
 Displayed when the user activate it from a menu bar.
 The user selects a choice from the list of choices in the
displayed pull-down menu.
 The systems receive the choice & do the appropriate processing
accordingly.
 Nested pull-down menu
 It is the same as pull-down menu but for more than one level.
 It called also object menu & displayed when the user clicks on
the mouse right button.
 It contain items specific to current object
 The systems do specific processing depending on the choice
selected & nature of objects.
 Form fill interface
 Consists of a screen form, or web based for display by data items
that represent parameter need to be filed by the user.
 Such needed parameters can be high lighted or flashed.
 Can be simplified by introducing the default values.
 Command-language interface
 It allows the user to control the application through out of
commands.
 It is suitable to experienced users only.
 The mostly usually used command language in the SQL.
 Graphical user interface
 It allows direct manipulation of graphical objects in the screen.
 It depends, basically, on the drag & drop process.
 It requires more experienced users.
 Others user interface
 Styles interface
 It depends on a usage of special open for hand writing.
 It depends on the hand writing recognition.
 Touch sensitive screen
 It allows user to identify objects on the screen.
 It depends on the existence of a grid of light beams.
 Voice recognition
 It depends on the voice recognition module mounted and
conversion to a corresponding commands that be executed by
the system.

Guidelines for dialogue design


 Meaningful communication.
 Minimal user action.
 Standard options and consistency.

 Meaningful communication
 System should present info. To user in a very clear form.
 Info. Should have a title in each screen.
 Using abbreviation in a limited way.
 Response from the user should be clearly defined.
 Provide instructions to the user to help.
 To provide the user with code meaning as well as data in edited
format (i.e. visual assist).
 Response from the user should be clear, definite and understood by
the system.

 Minimal user action


 To minimize the user key – strokes through:
 Keying codes instead of whole word or complete description. As
the “Code” enters the system the forms automatically filled in.
 Supply the editing characters. i.e. dd/mm/yyyy
 Using default values.
 Providing pull – down and pop – up menus.
 combine between all the above is recommended
 Standard options and consistency
 System should be consistent of through out all different screens by:
 Locations of titles, date, time, feedback, messages, …
 Way of exiting program.
 Way of obtaining helps.
 Standardizing colors, fonts, sizes, …
 Standardizing icons, functions keys, …
 Consistent usage of terminology.
 Consistent way of screens navigation i.e.: opera thumbnails

System feedback for user


Feedback from the system to the user can be necessary in the following
cases:
 To notify the user that the computer has accepted his input.
 To notify the user that his input is in the correct/not correct form.
 To notify the user that there will be a delay in the processing.
 To notify the user that the request has been completed.
 To notify the user that the computer is unable to complete the request.

******Database Design******

Database Design: Data storage is the heart of any information system.

Database structure: it's the database technology including:


 DB management utilities.
 DB analysis and design case tools.
 DB application development tools.

Database objectives:
 Making data available according to user needs.
 Assuming data integrity.
 Supporting efficient updating, storage and retrieval.

Data can be stored in computer based system using two ways:


 Flat files.
 Database files (which ids central source of data that can be shared by
many applications).

Flat file can be organized under 4 files types:

 Mater files
 It contains master data, which are records that are relatively
permanent; these records are in general very large.
 Each record contains primary key and several secondary keys & may
apply a set of concatenated keys.
 It can be organized as: sequential, indexed sequential, a direct file
organization.
 Examples: customer file , personal file, inventory file

 Transaction files
 It's used to enter changes that update master files.
 Its records are not every large.
 Examples: customer transaction file, personal transaction file…
 Working files
 It's created during processing of other files as dummy files to help
in processing.
 It's Helpful when it's needed to process specific files using more
than one key.
 It should be deleted at the end of the run.
 Examples: sort and resort files…
 Report files
 It's used when a program is to generate printed output.
 It's needed when the printed report request is more than the
printing resources available.
 In this way, the printing requests are arranged in a queue &
processed lates according to a specific strategy, this process is
called spooling.
 Examples: spool files.

File organization and accessing


 Sequential files:
 The records stored in dates according to a specific data item called
the key of the file.
 When it is Sequential to Access that files it should go through
entire file.
 This way is not recommended as it needs more searching time.
 It is suitable when all the records in the files are needed to be
accessed.
 Indexed sequential files:
 The records are stored using a set of indexes created according to
some data items.
 The records of that files be accessed using the same indexes.
 It is better than the sequential file since the search time a
rationalized
 Direct files (Hash files) :
 The records are stored directly according to some hash function.
 The records of that file can be accessed using the same hash
function.
 It is preferable in case the record to be accessed are substantially
small
 Linked list files:
 Records are linked together by a set of pointers.
 It is achieved by using a set of pointers to direct multrecord located
any where in the file needed.

Database concepts

Entity: it is an object or event that has a set of properties called attributes.


Attributes: it represent an entity, the item the physical information of that
property is called data item.
A table (A relation): Contain data about an entity.
A tuple: it represent a row, in one data base table, arrow is defined by a key
attribute.
Relationship: A relation between two tables, it can be:
 One – to – one
 One – to – many
 Many – to – many
Key: it is a data item that can be used to identify a record it can be:
 Primary key
 Foreign key (secondary key)
 Concatenated key.
Meta data about database: it is a description about the database that
described for each data item (attribute) identification, name, length, type,
usage, its range.
Symbol: used to represent a database

Entity

To one relation ship, exactly one

To many, one or more

To zero or more, only zero or one

To zero or more, an be zero, one or more

More than one, greater than one

)Database management system (DBMS


It is the heart of the database which allows the creation (generation)
modification, and retrieval of data from database

Database administrator (DBA)


The personal that is responsible about achieving the data base objectives
.he should insure the following:
 Bata sharing among verity of application
 Data accuracy and consistency
 The availability of required data for now and for the future
 The fulfillment of the data to the user needs

Disadvantage of database
 It is location in one place meaning it is vulnerable to catastrophes
 Risk the only one person ,DBA is the responsible , privileged , and
skilled to manage database
Flat (conventional) files Database Files

A collection of similar records A collection of interrelated files

Files organization: sequential, indexed Database types: hierarchal, network,


sequential, hash, direct related

Relatively easy to design More complex

More cheaper More costly

Based only on one application Can be used for multiple application

Improved processing speed More slowly, but going to improve

Difficult to share one file among more Ability to share data among more than one
than one application application

Limited and reduced redundancy but


Duplicate data lead to inconsistency
strolled

Inflexible & none scalable Flexible and scalable

Data sharing increase the need foe back


More secure since data sharing is
up & recovery produced users, security, &
limited
privacy enforcement

Terminologies: field, record, master Terminologies: attribute, tuple, table,


file, transaction file relationship

DBA is responsible for DB technology, DB


Data administrator is responsible for
design construction, security, performance
data architecture and Mgt.
tuning

Good data model characteristics:


 Model simplicity
It should describe only the entity that is intended to describe
 Model non-redundancy
No duplicated data (attributes) in the level of the one entity
 Model flexibility & adaptability to future need model should fit the future
use without redesigning the model
 Flexibility & adaptability means that the model is easy to change to
accommodate with new needs.

Integrity constraints
 They are the rules that govern changing & deleting records & help keep
the data in the data in the database accurate.
 They provide the necessary controls & they can be:
 Key integrity
 Domain integrity
 Referential integrity

 Key integrity controls should cover:


 Every table should have one PK (may be concatenated )
 No two records should have the same key value
 It should have no null value
 Domain integrity controls should cover:
 Every attribute can have a set of values called attribute domain.
 No attribute can take range of values outside such domain
 Referential integrity controls should cover:
 Various table can be linked together through a FK
 The use of FK increases the flexibility of the model but increase the
risk for referential integrity errors.
 Referential integrity errors happen when a FK points out to a non-
existed record.
 This can be deleted by enforcing one of the rules:
 Any record can be deleted without regard to any record in other
table.
 Deleting a record in the table is automatically followed by the
deletion of matching records in related tables.
 Disallowing deleting a record before deleting all related records
in other tables.
 Deleting a record in one setting the key of other related
records to null value.
Program design
 The main component in the system design is the program design
 The system, in general consists of a set of application and each application
consists of a set of programs
 The programs constituting the one application should be linked together
by a set of interfaces
 An application should start by a log in screen, when a user wants to enter
a program m he must enter his user name and password
 The system should check the entered user name and password to ensure
their correctness
 When the application ensures their correctness, he starts to apply access
right control to define the data and function allowed to that user
 Accordingly the design should define and design a separate relation table
that defines the user profile concerning the application that contains the
access right max contents

The designer of the application or the program should include


 The inputs.
 The outputs.
 The processing in details.
 The supported data.
 Various interfaces.

For each application and program, the following should be stated:


 Identification and description.
 Programming technology used.
 List of programs constituting the one application, or list of
modules constituting the one program.
 Supported database description.
 List of various tests.

List of tests should cover


 Unit module testing.
 Integration testing.
 Program testing.
 Performance testing.
 Functional testing.
 Acceptance testing.

For each type of testing a document is prepared containing:


 List of tests.
 Description of each test.
 Report for each test.
 Plan of test execution.

Transaction design
 The backbone of any computerized system is the up to date
supported database

 Database to be usable and effective, should be recent and up


to date

 In some organizations, data base can be classified as:

 Main database that support day to day work or daily


work, it should be up to date

 Historical database which is aseies of results generated


from the main database as a result of a user queries done
for a given period of time, this data is kept for historical
user later on when needed

Transaction processing
 A transaction can be any action done on the database that
results in a modification or change or update to part or all the
database contents

 A transaction can be processed under one of two modes :-

 Batch transaction processing :

In which transaction are processed in batches. Its can


be applied when transaction registration is documented
on paper, i.e. offline or when the computer needed is not
connected or not available, only on limited period of time
at the end of processing an over all report is generated
to tell the user the status of processing of all
transaction.

 Online transaction processing :


In which the transaction are processed online as soon as
they are available for each entered and processed, an
interface menu should be displayed to the user to tell
them the status of processing.

When designing the transaction format it should include


 Transaction identification (key).

 Transaction type.

 Transaction date.

******Example******

A company selling spares products, it receives customer order through its


web site order form; it receives the customer order then generates the
related invoice, it generates the related invoice & it generate two copies of
the invoice one sent to the customer by e-mail and the other is sent to the
store for further processing

The processing can be as follows:-


 validate the data entered in the form to ensure: Existing of the customer
name, address, phone, fax and email a quantity against each product is
greater than zero existence of the stored product in the database
 storing the validated orders in the data base
 generate the corresponding invoice as following:
 Pricing the indidal
 calculate the value of each product as quantity unit price
 Calculate t the invoice total value –, stored the generated invoice in
the database, send a copy to the customer by email, send another
copy to store department
 input form
 Output form
 Related interface screen
 Define the system technical architecture
 Draw the data base schema
 State the varies program/mode required for implementing the
simplicity

Design the transaction

‫و السلم عليكم و رحمه‬


‫الله وبركاته‬

You might also like