Title: Session 7 Computer Software
1Session 7 Computer Software
- PART I Introduction to the Foundation of
Information Technologies
2SOFTWARE
?????????
- PROGRAM Set of instructions to the computer
- STORED Program must be in primary storage
- Software Detailed instructions to control
computer operation of a computer systems. Without
software, the computer hardware could not perform
any tasks.The functions of software are to - (1) manage the computer resources of the
organization, - (2) provide tools for human beings to take
advantage of the these resources - (3) act as intermediary between organizations and
stored information.
3SOFTWARE
HARDWARE
4Operating system
- Allocates and assigns
- memory
- e. g., file system, virtual memory
- processor time
- e. g., multitasking, multiprocessing
- input- output devices
- e. g., printer, keyboard, etc.
- May also provide other capabilities useful to
many users or programs - Graphical User Interface (GUI) capabilities
- Fonts, network protocols, ...
5Operating system as magician(???)
- The four illusions
- Many separate computers, one for each process
Multitasking - Large memory Virtual memory
- Disks and other secondary storage are organized
as collections of files File systems - Windows and menus Graphical User Interface
(GUI)
6Operating Systems Capabilities Multiprogramming,
Multitasking
7Operating Systems Capabilities Virtual Storage
- Virtual Storage is the method of handling several
programs in primary storage - Program divided into
- Fixed length portions(pages) OR
- Variable length (segments)
- Current portions reside in primary storage,
portions swapped out when done.
8Operating Systems Capabilities time sharing
- MANY USERS SHARE LARGE CPU
- Time in CPU divided into slices (e.g. 2
microseconds) - Each user has access to CPU during slice.
- Single CPU is fast, can do much during time slice
- Users job swapped out at end of slice
9Operating Systems Capabilities Multiprocessing
- Links together two or more CPUs to work in
parallel in a single computer systems to execute
two or more instructions. - Program can be divided to be processed by
multiple CPUs. - Can process large programs more rapidly
10Operating Systems Capabilities File Systems
- Reality
- Disks are sets of tracks(??)
- Tracks are sets of sectors(??)
- Sectors can store fixed- sized byte blocks
- Illusion
- Disks are sets of directories (??)
- Directories contain other directories or files
- Files are variable- size byte sequences
- Directories and files have names
11Operating Systems Capabilities Windows and Menus
- Reality Screen is an array of pixels(????)
- Illusion 1 Menus
- Depending on where you click, different action
happens - Technique OS looks up location where mouse was
clicked, executes appropriate action - Illusion 2 Overlapping windows
- A window may cover part or all of another
- When a window is uncovered, its contents are
redisplayed - Technique OS saves bitmap(??) of covered
windows - Application does not need to know how to redraw
the contents of its window
12MICROCOMPUTER OPERATING SYSTEMS
OPERATING SYSTEM
FEATURES
13MICROCOMPUTER OPERATING SYSTEMS
OPERATING SYSTEM
FEATURES
Unix
For powerful microcomputers, workstations,
minicomputers. Multitasking, multi-user
processing, networking. Portable to various
computer platforms
Linux
Free, reliable alternative to Unix, Windows. Runs
on many Platforms. Open-source
Mac OS
For Macintosh computers. Multitasking. Powerful
graphics, multimedia
DOS
For IBM (PC-DOS) and PC (MS-DOS). Program
memory 640K
14Selecting an Operating System
- Is our existing software compatible with the
OS? - Does the OS have a large base of compatible
software? - How reliable is the OS? Does it crash
frequently? - Is the OS available for a wide variety of
hardware? - How quickly does it run?
- How easy it is to learn and use?
- How easy is it to install and configure?
- How much does it cost?
15SOFTWARE
HARDWARE
16 Computer System Operating Process
How to operate in computer ?
71017 ?
17EXAMPLE 710?
Machine Language
Assembly language
Instruction Program 0011 1110 ???(LD A) 0000
0111 ???(7) 1100 0110 ???(ADD A) 0000 1010
???(10) 0111 0110 ???(HALT)
Program LD A, 7 ADD A,10 HALT
18INSTRUCTION EXECUTION CYCLE
19TRANSLATION PROCESS
High-level language instructions
Translates high-level code into machine language
Ready for computer
20GENERATIONS OF PROGRAMMING LANGUAGES
- 1st. Since 1940s. MACHINE LANGUAGE
- binary code
- 2nd. Since early 50s. ASSEMBLY LANGUAGE
- mnemonics for numeric code
- 3rd. Since mid 50s. HIGH-LEVEL LANGUAGES
- 4th. Since late 70s.
21SOFTWARE
HARDWARE
22Utility Programs
- Routine operations
- Eg., Sort, list, print,.
- Manage data
- Eg., create file, merge file, .
23Application Software and Programming Languages
- Programming languages
- evolved from machine language to high-level
languages for business and scientific work - Important programming languages for business
today COBOL, C, C, and Visual Basic, so on
24Programming Languages
C Operating systems application software
C Object-oriented application software
COBOL Business administration alphanumeric processing
Visual Basic Visual tool Windows applications
FORTRAN Processing numeric data scientific, engineering programs
BASIC Used for teaching
Pascal Used primarily for teaching programming
25Fourth-Generation Languages
- Fourth-generation language
- Can help end users develop software with little
or no assistance from IS specialists, less
procedural - 6 CATEGORIES
- Natural languages
- Close to human language
26FOURTH GENERATION LANGUAGES (4GL)
eg.
27CONTEMPORARY TOOLS FOR SOFTWARE DEVELOPMENT
- Object-oriented programming
- Approach to software development that combines
data and procedures into a single object - Objects are independent, reusable building blocks
- Based on concepts of class and inheritance
- Visual programming
- Construction of software programs by selecting
and arranging programming objects
28Class and inheritance
29CONTEMPORARY TOOLS FOR SOFTWARE DEVELOPMENT
- Java
- Object-oriented Programming language,
- Delivers the software functionality needed for a
particular task - Runs on any computer and operating system,
Platform-independent - Hypertext Markup Language (HTML)
- Page description language, creates Web pages and
other hypermedia documents - XML (eXtensible Markup Language)
- Describes the structure of a document, supports
links to multiple documents, allowing data
30Application Software Packages and Productivity
Software
- PC software tools
- Word processing software Create, format, print
documents - Desktop publishing software Produce
professional-quality documents with greater
formatting, design capabilities - Spreadsheets Display data in grid for
recalculating numerical data - Data management software Store, manipulate data
in lists and databases - Presentation graphics Create professional-quality
graphics and multimedia presentations - Integrated Software Packages and Suites Combine
two or more applications easy data transfer - Other productivity software
- E-mail software Computer exchange of messages
- Web browsers Access and display Web, Internet
resources - Groupware Support activities of workgroups
31Software Package for Enterprise Integration
- Enterprise (business) software
- Eg., ERP, SCM, CRM, .
- Set of integrated modules for major business
functions - Allows data to be used by multiple functions and
business processes - Legacy system
- System in place for long time
32SELECTED EXAMPLES OF APPLICATION Software Packages
- ENTERPRISE RESOURCE PLANNING MATERIAL
REQUIREMENT PLANNING MNAUFACTURING RESOURCE
PLANNING E-COMMERCE, CUSTOMER RELATIONSIP
MANAGEMENT BUSINESS INTELLIGENCEACCOUNTS
PAYABLE/RECEIVABLE ARCHITECTURAL DESIGN
BANKING SUPPLY CHAIN MANAGEMENT
COMPUTER-AIDED-DESIGN DOCUMENT IMAGING TRAVEL
AGENCY E-MAIL FINANCIAL CONTROL FORECASTING
FORMS DESIGN GRAPHICS HOTEL MANAGEMENT HUMAN
RESOURCES INSTALLMENT LOANS INVENTORY CONTROL
JOB COSTING/SCHEDULING LIFE INSURANCE HOTEL
MANAGEMENT SYSTEM MATHEMATICAL / STATISTICAL
MODELING ORDER ENTRY PAYROLL PROCESS CONTROL
REAL ESTATE MANAGEMENT SALES DISTRIBUTION
SAVINGS SYSTEMS STOCK MANAGEMENT TAX
ACCOUNTING UTILITY CONTROLS WORD PROCESSING
33Software for Enterprise Integration
- Middleware
- Allows two disparate applications to communicate
to exchange data - Enterprise application integration (EAI) software
- Ties together multiple applications to support
enterprise integration
34Enterprise application integration (EAI) software
versus traditional integration
35Software for Enterprise Integration
- Web services
- Universal standards using Internet technology for
exchanging data between systems - Web server
- Manages requests for Web pages on computer where
they are stored - Application server
- Middleware software handling application
operations between user and back-end business
systems
36A multitiered architecture for e-commerce and
e-business
37???????
- ??????????????
- ???????????
- (?1.5?????),
- ??????????
- (????4-7).
38????
- ?????????????
- ???????????????????????
- ???????????????????1979??????????,???????????6.8?
???,47(3.2M)????????,29(2.0M)???????,19(1.3M
)??????,3(0.2M)??????????,?2(0.1M)??????? - 90??,????????
- ?Widows 2000???,????????????????63000?????,????
Windows 2000??? - ?21000???????,????????????????????,
- ?27000?Bug,?????,???????????????????
- ?????????????,??????????
39Software Trends
- ?????
- ??????????
- ????????
- ????,???,????,????
- Open Source Development
40Open Source Development
- There is an increasing trend toward using this as
a method of software development. - In this method source code is distributed and
developers can improve and add to code as they
see fit, good ideas are then included into the
product. - This method allows software products to grow and
improve in a natural organic way.
41Moving your company from products to services
- Supporting the software
- Improving the software
- Integrating the software
- Problems with open source
- anybody, nobody responsible
42Total Cost of Ownership (TCO) of Technology Assets
- Includes both direct and indirect costs
- Hardware and software acquisitions account for
only 20 of TCO - TCO for a PC may run to three times original
purchase price - Hidden costs can make distributed architecture
more expensive than centralized mainframes
43Total Cost of Ownership (TCO) Cost Components
- Hardware acquisition
- Software acquisition
- Installation
- Training
- Support
- Maintenance
- Infrastructure
- Downtime
- Space and energy
Managing Hardware and Software Assets
44Rent or Build Decisions Using Technology Service
Providers
- Storage service provider SSP, SAN
- Provides online access to storage devices and
storage area network technology - Application service provider ASP
- Delivers applications over networks on
subscription basis - Management service provider
- Manages applications, systems, security, storage,
Web sites, system performance
Managing Hardware and Software Assets
45Model of an Application Service Provider (ASP)
Figure 6-15
46Assignment for Session 7
- Individual Review for session 7
- Reading Materials Textbook chapter 4
- Individual Prepare for session 8
- Reading Materials Textbook chapter 5
- P206-207. Review Quiz
- Write down in your book, not submit
- Group Assignment bring to class
- Please design the software architecture for Mr.
Wangs Pottery Company, including system
software, application software. - Prepare for the CASE QUESTIONS on P.121.
- Prepare for the CASE QUESTIONS on P.139.