Post on 26-Dec-2015
2
Lecture Overview
Software Types System Software
Operating Systems Applications Software Graphical User Interface Software Development Process Programming Languages
3
Software Types – SW Definition
SOFTWARE is the aggregate of the programs which are running by computer systemIt is an integral part of the computer system
Programs at Computer in contrast to HW are intangible and it’s classified as a SWIt said sometimes: a HW is Iron and a SW is a
soft IronArea of computer application is determined by
installed software thereComputer itself does not possess knowledge in any
application domainAll these knowledge are concentrated in the
computer SWSW of the modern computers includes a
tremendous number of programs
4
All software can be classified into the three categories:
Software
Applicationsoftware
Systemsoftware
Softwaretools
Software Types - Classification
5
Software Types – Functions and Distinct
Application SW is intended for a direct running of user tasks For example SW for payroll preparation
System SW or Operating System SW are controlling the whole recourses and operations of a computer OR the computers group which are united into network
SW Tools simplify the new programs design for a computer As opposed to the Application SW the Operating Systems SW
and SW Tools have no direct contribution to satisfy a user Nowadays a border breaks between SW categories and we
should separate just two of them:1- System SW or Operating Systems SW, 2- SW Application
Operating Systems have a prime place within System SW
6
System Software - Utilities
Utilities - is the important class of the system programs with the auxiliary purposes They either extend and complement the proper
possibilities of the OS or solve independent important tasks
The types of utilities: Control programs, testing and diagnostics
Used for functioning verification of the computer devices
Also used for fault location in the process of exploitation
Specifies a reason and place of it’s disrepair(continued on the next slide)
7
System Software – Utilities (continued)
Programs-drivers - extend possibilities of the operating system for input-output management
They allows connecting to the computer new devices or non-standard use of present ones
Programs-packers (archives) Allow to write down information on disks
more densely, and also to unite the copies of a few files in one archived file
Anti-virus programs - intended for prevention of infection and liquidation of existent viruses in the computer
(continued on the next slide)
8
System Software – Utilities (continued)
Programs for optimisation and quality control of the disk space
Software for information retrieval, formatting, and data protection
Communication programs - organise an exchange of information between computers
Programs for memory mapping - provide more flexible use of main memory
Recording programs so on
9
System Software – Operating Systems
Operating System is a complex of the associate systems SW which organise an interaction between an user & computer as well as SW running
OS is a coordinating link between HW and SW running from one side, and a user from other side
It’s called as a SW continuation of Control Unit OS is saved into external storage-hard disc
It reads off from hard disc and saves into RAM during computer switch on
This process is named as a OS download
10
Operating Systems Functions
Functions of the Operating System: Running of dialog with an user Data input-output and management Scheduling and organization of the programs
running process Resources allocation - RAM and cache,
processor, peripheral devices Running initiation of the programs Various auxiliary operations of service Information transmission between the different
internal devices Software support of the peripheral units-display,
keyboard, hard disc, printer and other
11
Operating Systems - 4 Main Classes
1 - Single-user single-task OS Support just one keyboard and can run one
task only 2-Single-user single-task OS with the background
printing Allows to run one additional task oriented for
data printing basically It’s accelerating work during printing of the
data large volumes(continued on next slide)
12
Operating Systems - 4 Main Classes (continued)
3 - Single-user multitask OS Provides a parallel running of a few tasks for
one userFor example, it is possible to connect a
computer with a few printers and each of them will work for own task
4 - Multi-user multitask OS Allows to run the several tasks for a several
users at just one computer It looks as a very complicated OS that requires
the considerable machine resources
13
Operating systems: File System
File is the ordered aggregate of any data placed on an external storage It’s storable , transmitted and processed as a single
wholeFile can contain the program, numeric data, text,
coded image and otherFile system is a tool for organisation of files storage
in some medium Files are implemented physically in the external
storage: magnetic discs or CDEach file occupies some number of memory blocks,
its usual length is 512 bytes
14
Operating systems: File system (continued)
Files are served by OS special module named the driver of the file system Every file has his name, incorporated in a
directory — table of files contents. Directory – it’s named sometimes as a folder -
is accessible to the user through the OS command language
Directory may have own name and it can be saved in other directory with the common files forming the hierarchical files (see next slide)
16
Operating Systems: Shells
Shells are the SW, created for simplification of work with the difficult programmatic systems, such, for example, as DOSIt transforms a bulky command user interface in a
friendly graphic oneIt gives an user a comfortable access to the files and
vast servicesNorton Commander was the most popular shell in the
pastMS-Windows 3.х and Norton Navigator were used as
well
17
Operating Systems – Microsoft’s Common OS
Windows 2000 Professional is a new generation operating system for the business use at the most computers - from portable to servers It is the best for commercial activity in Internet
Windows XP (Home and Professional), Vista New OS’ based on the Windows 2000 for the
both home and business use. Windows CE 3.0 is the OS for mobile computing
devices: palm computers, digital pagers, cellular phones, DVD Supports the Internet and e-mail and it’s
running with the various microprocessors
18
Operating System Software - Microsoft’s Common OS (continued)
The Unix operating system was created in Bell Telephone Laboratories It’s a multitasking OS, able to provide the
simultaneous work for a huge amount of users Linux – OS based on UNIX platform
It’s a powerful and free system that includes:decentralised development groupbroad testing during the development processindependence of one tool from another one
Disadvantage: absence of installation unified procedure
19
Applications Software – Word Processors
Word Processors are used for data input and editing with the following functions: Text lines editing Usage possibility of different character fonts Printing-down and transfer part of text from one place to another or from one document to another
(continued on the next slide)
20
Applications Software - Word Processors (continued)
Context search and replacement of text parts Task of arbitrary interline intervals Self-instructed carry of words on a new line Automatic pagination Processing and numeration of foot-notes Aligning the edges of indention Tables creation and diagrams construction Word spell checking and synonyms selection Construction of contents tables and subject
indexes Unsealing of geared-up text on a printer in the
necessary number of copies, etc
21
Applications Software – Graphics SW
Graphics editors Graphics Software are the programs, intended for the automation of graphic images construction on the computer display Provides the possibilities of drawing lines,
curves, coloration of screen areas, creation of inscriptions different fonts and etc
Most editors allows to process images, received from scanners, and also to output the pictures in such kind, that they could be plugged into a document, geared-up by a text editor
Some editors allow to get representing three-dimensional objects, their sections, turns, models of frameworks, etc
22
Applications Software – Graphics SW (continued)
The most popular editors are Photoshop (left) for raster graphics and Corel DRAW (right) for vector graphics.
23
Applications Software – Graphics SW (continued)
It allows to draw in the contour lines some three-dimensional objects like an example below
24
Applications Software – Spreadsheets
Spreadsheet is a rectangular table (or grid) of Info consisting of lines and columns which content a numerical data, formulas or text
Value in the numerical cage of table can be either written or expected to be calculated in the proper formula A formula can be addresses to other cages as
well A set of the associate programs for processing of
spreadsheets is named sometimes as a Tabular processor
MS Excel is the most popular one (see next slide)
26
Applications Software – Spreadsheets (continued)
Note: if the new value is recorded into some cage of table from a keyboard the new values are counted also in all those cages with data-dependent on this cage
Spreadsheets are a comfortable tool for running of the book-keeping and statistical calculations Examples: Payroll, budget and etc
There are the hundreds of the embedded mathematical functions and algorithms of data processing in every Spreadsheets package
Spreadsheets have in-built reference system Multi-dimensional tables allow to make a
selection in Database according proper criterion
27
Applications Software – Databases
A computer database is a structured collection of records or data that is stored in a computer system so that a computer program or person using a query language can consult it to answer queries The records retrieved in answer to queries are
Info that can be used to make decisions info The computer program used to manage and query
a database is known as a database management system (DBMS) DBMS is a complex set of software programs
that controls the organization, storage, management, and retrieval of data in a database
28
Applications Software – Databases (continued)
DBMS accepts requests for data from the application program and instructs the operating system to transfer the appropriate data
Modern DBMS enable to operate with a text and graphic information as well as voice fragments and video clips
Simplicity of DBMS usage allows to create the new databases without additional programming, just using the embedded functions only
Popular DBMS - Oracle,DB2, Microsoft Access (see example on next slide), MS SQL Server
30
Applications Software – Web Browsing
Web browser is a software application that enables a user to display and interact with text, images, videos, music and other information typically located on a Web page at a website on the World Wide Web or a local area network
Text and images on a Web page can contain hyperlinks to other Web pages at the same or different website
Web browsers allow a user to quickly and easily access information provided on many Web pages at many websites by traversing these links
Web browsers format HTML (hypertext markup language) Info for display, so the appearance of a Web page may differ between browsers
Some of the Web browsers available for personal computers include Internet Explorer, Mozilla Firefox, Safari, Opera, and Netscape
31
Applications Software –Desktop Publishing
Desktop publishing (also known as DTP) combines a personal computer and page layout software to create publication documents on a computer for either large scale publishing or small scale local economical multifunction peripheral output and distribution
Users create page layouts with text, graphics, photos and other visual elements using software such as QuarkXPress, Adobe InDesign, the free Scribus, Microsoft Publisher, Apple Pages and (to some extent) any graphics software or word processor that combines editable text with images For small jobs a few copies of a publication might be
printed on a local printer For larger jobs a computer file can be sent to a vendor for
high-volume printing Term DTP is commonly used to describe page layout skills
32
Applications Software – Accounting
Accounting software records and processes accounting transactions within functional modules such as accounts payable, accounts receivable, payroll, and trial balance It functions as an accounting information system It may be developed in-house by the company
using it, may be purchased from a third party, or may be a combination of a third-party application SW package with local modifications
It varies greatly in its complexity and cost Main Categories are: personal accounting, low end,
mid market, high end, vertical market, hybrid solutions
33
Applications Software – Integrated Packages
Integrated packages are the set of a few software products, incorporated in a single comfortable instrument Most of them include text editor, organiser,
spreadsheet, DBMS, tools for e-mail support, program for creation presentation, graphic, etc.
Example: integrated package for books writing, containing illustrations. It contains:Text editorOrthographic proof-reader on 80000 wordsTexts confluence programAutomatic search and replacementTelecommunication toolsSpreadsheet etc
34
Applications Software - Organizers
Organisers is the programs -electronic assistant Allow effectively disposing of working hours,
financial means, etc Possess possibility of regular actions
automation, drafting of the personal and groups time-tables, meetings planning, keep a diary
Contains calendar, clock, calculator, etc Lotus Organizer is a notebook, broken to the
section-by-section: calendar, list of businesses, address and public-call book, planner, notebook, list of memorable dates (see example on the next slide)
36
Graphical User Interface – What is it?
User Interface (or Human Machine Interface) is the aggregate of means by which people (users) interact with a particular machine, device, computer program or other complex tool (system)
Graphical User Interface (GUI) is a type of user interface which allows people to interact with a computer and computer-controlled devices It employs the graphical icons, visual indicators
or special graphical elements called "widgets", along with text, labels or text navigation to represent Info and actions available to a user
Actions are usually performed through direct manipulation of the graphical elements
37
Graphical User Interface - Widget Toolkit
In computer programming, widget (or control) is an interface element by which user interacts with computer, such as a window or a text box Widgets are sometimes qualified as virtual to
distinguish it from its physical counterpartse.g. virtual buttons that can be clicked with a
mouse cursor vs. physical buttons that can be pressed with
a finger Widgets are often packaged together in widget
toolkit or widget library or GUI toolkit Programmers use widgets to build graphical
user interfaces (GUIs)
38
Graphical User Interface – Specific Applications
Touch screen point of sale software used by wait staff in busy restaurants
Self-service checkouts used in some retail stores.. ATMs Airline self-ticketing and check-in Information kiosks in public spaces like train stations and
museums Monitor/control screens in embedded industrial applications
which employ a real time operating system (RTOS) The latest cell phones and handheld game systems also employ
application specific touch screen GUIs Cars: GPS navigation, touch screen multimedia centers, and
even on dashboards of the newer cars Zooming User Interface (ZUI) which is a logical advancement
on the GUI, blending some three-dimensional movement with two-dimensional or "2.5D" vector objects
39
Software Development Process
SW process or Software life cycle can be stated:
It’s documenting for maintenance & enhancement SW programs don’t wear out, they are needed to
be modified because of possible changes& errors SW development phase includes the main stages:
Analysis Design Implementation or coding Testing
SoftwareDevelopment
Maintenance Modification
40
Software Development – Main Stages
Analysis determinates the users needs and asks on a question: what a developing SW system must do?Then the requirements to a developing program are
formed and formalized as well as the exact specification of the functions (tasks) which the program must execute
Design determines the structure of the SW System and asks on question: how it will run the posed tasksIt’s accepted that a modular structure is the best for
SW program system Implementation or coding includes the code design,
design of data files and BD developmentProgramming languages are used there (see next
slides)
41
Software Development – Testing
Testing is tied with a coding because each program module has to be tested after its code was designed A current program version is systematically
tested as the errors presence is normal in most situations
It’s practically impossible to develop a real Testing process can be divided into:
Verification in normal conditions Verification in extreme conditions Verification in exceptional situations
Program debugging is the errors search and removal process in program which produces on its testing results by a computer
42
Programming Languages
A programming language is an artificial language that can be used to control the behavior of a machine, particularly a computer
C is a general-purpose, block structured, procedural, imperative computer programming language developed in 1972 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix
C++ is a general-purpose programming language with high-level and low-level capabilities
It is a multi-paradigm language supporting procedural programming, data abstraction and object-oriented programming
43
Perl is a dynamic programming language created by Larry Wall and first released in 1987
Perl borrows features from a variety of languages including C, shell scripting , AWK and Lisp
PHP is a reflective programming language originally designed for producing dynamic web pages
Assembly language is a low-level language for programming computers
It implements a symbolic representation of the numeric machine codes and other constants needed to program a particular CPU architecture
Programming Languages (continued)
44
References European Computer Driven Licence, Syllabus version 4.0, 2006. Lecture Notes. Fundamentals of Informatics (e-version). Based on
a book by L.Z.Shaucukova. Informatics (in Russian). Moscow, 2002. – 420 p. (translated and edited by Anatoly Sachenko).
William Stallings. Computer Organization and Architecture: Designing for Performance (6th edition). Prentice Hall , 2002, 750 p.
Tucker (Editor-in-Chief), R. Cupper, F.P. Deek, and R. Noonan (Editorial advisors), Computer Science Handbook, Second edition, CRC Press, 2004, 2752 p.
Hysa B., Piekoszewska B., Rakowiecka K., Sobota M., Sołtysik-Piorunkiewicz A., Zdonek D., Zdonek I., : Laboratorium z podstaw informatyki w zarządzaniu. Część II. Wprowadzenie do MS Windows. MS Word. Wydawnictwo PŚ. Gliwice 2003. Skrypt nr 2324.
Kowalczyk G.: Word 2000 PL. Ćwiczenia praktyczne. Helion, Gliwice 2000.
J. Glenn Brookshear. Computer science an overview, Sixth edition, Addison Wesley, 2001, 688 p.