Software Basics
Introduction to Computer Science
            2007-2008
Aims
• Describing main sw categories and their
  relationship
• Explaining relationship between algorithms
  and programs
...
How the sw works?

                  thinks


                                            algorithm

           Problem:
n...
How the sw works?
algorithm
                                               program
                … but
            compu...
How the sw works?
                                              program
                                              (sou...
Example
Algorithm



1. Ask the user for a number
2. Multiply it by 2
3. Show the result on the screen




               ...
Example
                  Source code
#include <stdio.h>

void main()
{
    int num, double;

    printf( “Enter a number:...
Example
                           Binary code
010110011101110000001000001111010001
111011111000101111100010001001001111
0...
Development software




                 Software
Application
 software      classification                        System
...
Development software
  • Assisting programmers to write software
  • Typical tools
                                     Co...
Application software
• Why do we use application sw?
 • visual metaphors of the real world
 • extend human capabilities


...
Application software
                Vertical market

• Examples: accounting, library cataloguing or
  restaurant manageme...
Application software
                Suites
• Common applications
• Used in many fields
  (home, office, education,
  admini...
Application software
            Integrated packages
• Set of applications sold in a block
• Easy earning
• Limited functi...
System software

                                           •    Manages communications
                                  ...
Device drivers
• Communicates computer and I/O devices
• Extends computer (open architecture)
• Brokers to access the devi...
Operative systems
• brokers between users/programs & Hw
 • isolations layer
 • programs compatibility
• main tasks
 • ease...
OS functions
• communications with peripherals (I/O)
• process management (multitasking)
• memory management (protection &...
Utility programs

• System maintenance tools
• Executed apart from OS
• We can find them…
 • incorporated into the OS (disk...
Additional considerations
               Documentation

 • instructions about how to install them
 • tutorials
 • referenc...
Additional considerations
             Upgrading




        4626. Introd to Computer Science
Additional considerations
                     Upgrading

 • periodically, companies sell new versions
 • reasons: improve...
Additional considerations
                     Compatibility


 •   constraints about                   •    operative sys...
Additional considerations
                     Licensing

 • you don’t buy sw, you buy a license
 • individual and corpora...
Additional considerations
                    Distribution


•   proprieraty                                      •   free...
User interface
•   character console:                                            •   metaphors. desktop,
    command line ...
MS-DOS
4626. Introd to Computer Science
Windows 3.11
  4626. Introd to Computer Science
Windows 95
  4626. Introd to Computer Science
Windows XP
  4626. Introd to Computer Science
Windows Vista
   4626. Introd to Computer Science
Linux
4626. Introd to Computer Science
Mac OS X (Leopard)
     4626. Introd to Computer Science
File system management

•   specific folders for user’s
    documents

•   search tools by name or
    content
    (Google ...
Multi-user OS
UNIX
• preferred OS for mainframes &
  workstations
• versions: Solaris (Sun), HP-UX (HP),
  Aix (IBM) IRIX ...
Upcoming SlideShare
Loading in …5
×

Software Basics

5,878
-1

Published on

Published in: Technology
1 Comment
7 Likes
Statistics
Notes
  • One of the best prepared shows I have ever come across regarding this matter. Great work!
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
5,878
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
454
Comments
1
Likes
7
Embeds 0
No embeds

No notes for slide

Software Basics

  1. 1. Software Basics Introduction to Computer Science 2007-2008
  2. 2. Aims • Describing main sw categories and their relationship • Explaining relationship between algorithms and programs • Discussing factors that make apps useful • Describing the role of operative systems • Outlining the evolution of interfaces 4626. Introd to Computer Science
  3. 3. How the sw works? thinks algorithm Problem: natural language is ambiguous 4626. Introd to Computer Science
  4. 4. How the sw works? algorithm program … but computers can’t understand thinks that writes 4626. Introd to Computer Science
  5. 5. How the sw works? program (source code) executable algorithm writes (binary code) thinks generates 4626. Introd to Computer Science
  6. 6. Example Algorithm 1. Ask the user for a number 2. Multiply it by 2 3. Show the result on the screen 4626. Introd to Computer Science
  7. 7. Example Source code #include <stdio.h> void main() { int num, double; printf( “Enter a number: “ ); scanf( “%d”, &num ); double = num * 2; printf(“Twice %d is %dn”, num, double ); } 4626. Introd to Computer Science
  8. 8. Example Binary code 010110011101110000001000001111010001 111011111000101111100010001001001111 001001101011100001111001001101011000 110111001001100111100010110011100010 001011011011011010111010010100011111 000011001000111000100011101111000101 010010100100110011111110011100111000 111110111110110100011100001110000100 101111010011110110010011100001101110 4626. Introd to Computer Science
  9. 9. Development software Software Application software classification System software 4626. Introd to Computer Science
  10. 10. Development software • Assisting programmers to write software • Typical tools Compiler IDE Text editor Debugger 4626. Introd to Computer Science
  11. 11. Application software • Why do we use application sw? • visual metaphors of the real world • extend human capabilities 4626. Introd to Computer Science (pictures from tecnomarketer)
  12. 12. Application software Vertical market • Examples: accounting, library cataloguing or restaurant management • limited market (high cost) • sometimes developed for just one customer Specific software for a sector 4626. Introd to Computer Science
  13. 13. Application software Suites • Common applications • Used in many fields (home, office, education, administration….) • Sold separately or in a package (suite) Apps that “work well together” 4626. Introd to Computer Science
  14. 14. Application software Integrated packages • Set of applications sold in a block • Easy earning • Limited functionality (but enough) • Cheaper Share the same environment 4626. Introd to Computer Science
  15. 15. System software • Manages communications between hw & sw • Abstraction from hw details (virtual machine) (source: FFP Basic http://iaf-bs.de) 4626. Introd to Computer Science
  16. 16. Device drivers • Communicates computer and I/O devices • Extends computer (open architecture) • Brokers to access the device • You can get them • included in the OS • provided with the device (install CD) • owned by a third company (buy it) 4626. Introd to Computer Science
  17. 17. Operative systems • brokers between users/programs & Hw • isolations layer • programs compatibility • main tasks • ease the use of the computer • use the software efficiently 4626. Introd to Computer Science
  18. 18. OS functions • communications with peripherals (I/O) • process management (multitasking) • memory management (protection & virtual mem) • resource monitoring for accounting and safety • file system management • network communication coordination 4626. Introd to Computer Science
  19. 19. Utility programs • System maintenance tools • Executed apart from OS • We can find them… • incorporated into the OS (disk defrag) • provided by others (antivirus) 4626. Introd to Computer Science
  20. 20. Additional considerations Documentation • instructions about how to install them • tutorials • reference manuals • help files • on line help systems • support services, FAQ 4626. Introd to Computer Science
  21. 21. Additional considerations Upgrading 4626. Introd to Computer Science
  22. 22. Additional considerations Upgrading • periodically, companies sell new versions • reasons: improvements, bugs, adaptation to other SW (OS) • versions identified by numbers (decimals for minor changes) • right to free updates during a period 4626. Introd to Computer Science
  23. 23. Additional considerations Compatibility • constraints about • operative systems computer and resources (Windows, MacOS, Linux) • examples: CPU, memory, free HD space • sometimes, version: Windows 95, 98, NT, Me, 2000, XP,Vista.. Hardware Software 4626. Introd to Computer Science
  24. 24. Additional considerations Licensing • you don’t buy sw, you buy a license • individual and corporative licenses • main limitation: number of computers and right to copy (backup) • EULA (End User License Agreement) • license terms • disclaimer terms (limited liability) 4626. Introd to Computer Science
  25. 25. Additional considerations Distribution • proprieraty • freeware • shareware • open source / free software • demo • semi free • adware • public domain 4626. Introd to Computer Science
  26. 26. User interface • character console: • metaphors. desktop, command line (MSDOS) folders, documents… • graphical user interface • active elements: (GUI) • icons • visual concepts • buttons • controls individual points on the screen • windows • Apple MacOS (1984) • scrolling bars 4626. Introd to Computer Science
  27. 27. MS-DOS 4626. Introd to Computer Science
  28. 28. Windows 3.11 4626. Introd to Computer Science
  29. 29. Windows 95 4626. Introd to Computer Science
  30. 30. Windows XP 4626. Introd to Computer Science
  31. 31. Windows Vista 4626. Introd to Computer Science
  32. 32. Linux 4626. Introd to Computer Science
  33. 33. Mac OS X (Leopard) 4626. Introd to Computer Science
  34. 34. File system management • specific folders for user’s documents • search tools by name or content (Google Desktop) • Specific tools for special files (iTunes) 4626. Introd to Computer Science
  35. 35. Multi-user OS UNIX • preferred OS for mainframes & workstations • versions: Solaris (Sun), HP-UX (HP), Aix (IBM) IRIX (Silicon Graphics) Linux • Unix versions for PCs • Distributions: Ubuntu, Suse, RedHat… 4626. Introd to Computer Science
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×