1.3 System Design - Spruce Creek High School

Download Report

Transcript 1.3 System Design - Spruce Creek High School

1.3 System Design
1.3.1 Parts of a System
The main parts of any computer system follow this data flow
Input
Process
Output
Input Devices
Central
Processing Unit
Output Devices
Backing
Storage
The user would find it difficult to deal directly with the hardware since all
operations at this level are carried out in binary machine code. Therefore,
successive layers of software have developed.
1.3.2 Data in a Computer System
• One important process is analysis + factfinding. This involves identifying data which
needs to be held and processed.
• To fully describe the system it is necessary to
consider what happens under many different
circumstances.
• Often data that needs to be held and
processed in a system is identified using data
flow diagram.
A data flow diagram typically uses the following
symbols (although there is not complete consistency in
practice)
A box with rounded
corners represents a
process. An example
would be a calculation
The box with an open
right-hand side
representing a data
store.
The closed rectangle is
a source or sink
(destination) of data. It
shows the limits of our
diagram, how the data
gets into or out of
these boxes is not a
concern of this
diagram.
Bicycle
Returned
Bicycle Details Card
Calculate Amount Due
Renter Pays
Update Bicycle Details Card
1.3.3 Data Capture and Presentation
• The data flow diagram shows only data flow
without reference to mechanisms of capture
and display. There are a great many ways to
capture data for use in a computer system.
Input Method
Example Devices
Example of Use
Manual data entry
Keyboard, mouse,
joystick, touch screen,
touch pad
Adding client or book
records in a library
Direct data entry
OCR/OMR scanners, MICR Lending a book, locating
reader, barcode scanner
borrower details
Automatic data entry
Sensors – temperature,
sound, pressure, light
Controlling the
temperature in the library
Similarly one can classify output
devices in common use.
Output Method
Example Devices
Example of Use
Temporary display
VDU, LCD display, lights
Showing the price of an
item at a POS terminal
Permanent display
Printers, plotters
Printing a receipt at a POS
terminal
Electrical/mechanical
output
Actuators – relays,
switches, converters, etc.
Sending credit card details
to a bank from a POS
terminal
• But there are so many input or output devices
that not all of them will fall into a particular
classification.
1.3.4 Design of Appropriate Data
Structure
• Relevant data structure are described together with examples of when
it would be appropriate to use them.
• In the exam, students are likely to be asked similar, but much simplified
questions. The design of appropriate data structures is an important
activity for the dossier and students should be able to discuss their
choices. It is an excellent idea to keep a written (or web-based) log
during the design stage of the dossier including sketches and notes
about the problem and possible ways of representing or storing the
data for a system.
• Discuss, including diagrams, the data structures that could be used to
hold the data for the system. Remember that the ‘discussion’ keyword
requires you to consider a range of possible data structures and give
reasons for selecting the ones you did.
1.3.5 Hardware Components
• You have probably already studied a range of
input, output and backing store devices.
Device
Could be used?
Keyboard Yes
Example of use
Advantages
Disadvantages
To enter details
of customers
Easy to enter
alphanumeric
data such as
an address.
Slower than
direct entry
methods such as
a barcode.
1.3.6 User Interfaces
• Early operating systems operated with typed in commands
(requiring command-line interpreters or CLIs) while later ones
have developed graphical user interfaces (GUIs). The main
features of these interfaces are:
Command Line Interfaces
Graphical User Interfaces
Easier to implement for a programmer,
requires less memory to run. Can be run
on systems without graphical monitors.
More complex to implement, requires
more memory, a pointing device and a
graphical monitor
Users need to remember specific
commands so new users can find them
harder to use.
Icons (small images) help users to
remember commands, file types;
commands are grouped in menus.
Long term users may find it quicker to
New users will find it easier to use
type in a command at the keyboard than because they do not have to remember
to use a mouse or other pointing device specific commands.
• Graphical User Interfaces are sometimes
described using the term WIMP, variously
interpreted as:
– Windows, Icons, Menus Pointers
– Windows, Icons, Mice, Pull-down Menus
1.3.7 Systems Flowcharts
• Systems flowcharts are designed to link data flow
and processing operations to specific pieces of
hardware. They are sometime known as inputoutput (systems) flowcharts. They should not be
confused with flowcharts used to show the
structure of algorithms.
• As with data flow diagrams there is a wide
variation in symbols used to implement systems
flowcharts; below are the ones specified by IB in
the Computer Science Subject Guide.
Devices and Media
• Action or process
• Input or output (word inside)
• On line storage
• Tape storage
• Disc storage
• Document
Other Symbols
• Annotation
• Lines crossing
• Lines joining
• Data flow
• Communications (2 ways unless indicated)
• Students generally seem to have great difficulty with
systems flow charts; the main problem seems to be
that they think in terms of linear algorithm flow charts.
• Flowcharts are used to describe algorithms (although
pseudocode is often preferred these days);
• Systems flowcharts are used to describe input-processoutput in computer systems, they are the only charts
to refer to hardware devices;
• Data flow diagrams refer to data objects and processes
(people, paper files, computer files, etc);
• Module diagrams are used to split a large problem up
into several smaller ones (stepwise refinement). This
makes the problem easier to solve and divide up
among a programming team
1.3.8 Constructing Systems Flowcharts
• Chapter 3 describes batch, online, and realtime systems; here we examine how these
types of process are represented in systems
flowcharts
– Common batch processing tasks
– Common online processing tasks
– Common real-time processing tasks
Common batch processing tasks
• In batch processing, data is gathered first and then
processed in one go. Typical operations update a
master file using a sorted transaction file. Therefore
in many batch processes (cheque clearing, electricity
billing, payroll processing, batch update of a stock
file), paper documents will be collected, validated
and sorted. Items rejected by validation may be
corrected and re-entered.
Common online processing tasks
• Recall that, in online processing, any transactions are
used to update a database immediately. A typical
example is supermarket stock control where barcoe
scanners at a POS terminal read the barcode, look up
the item details in a stock database and return the
details to the POS terminal where they are printed
on a receipt and shown on a display.
Common real time processing tasks
• Real time systems are a type of online processing
system in which the processing is fast – the input
data is processed quickly enough to affect the
next output of the system. Usually such systems
collect their data through sensors (automatic
data entry). A typical example is a system which
monitors a nuclear plant’s reactor core. In some
reactors a set of rods are inserted into the core to
damp the nuclear reaction. When this is done, a
warning is sent via a communications system to
the control room.