Title: Chapter 4 Computer Software
1Chapter 4Computer Software
2Learning Objectives
- Describe several important trends occurring in
computer software. - Give examples of major types of application and
system software. - Explain the purpose of several popular software
packages for end user productivity and
collaborative computing. - Define and describe the functions of an operating
system. - Describe the main uses of computer programming
software, tools, and languages
3Software
- A single program or a collection of programs
which performs many task and/or system related
functions - Two types of software
- Application
- System
4Application Software
- Personal Information Manager
- Groupware
- Organizational
- Inter-organizational
5Personal Information Manager and Groupware
- Personal Information Manager (PIM)
- Software for end user productivity and
collaboration - Store information about clients, schedules,
manage appointments, manage tasks - E.g., Lotus Organizer, Microsoft Outlook
- Groupware
- Software that helps workgroups collaborate on
group assignments - E-mail, discussion groups, databases,
videoconferencing - E.g., Lotus Notes, Novell GroupWise, Microsoft
Exchange
6Organizational Inter-organizational
- Organizational
- They assist typical organizational tasks
- Payroll, TPS
- ERP,CRM
- Web-based management systems
- Inter-organizational
- They provide links or cooperation between
organizations - B2B system
- EDI, SCM
7Overview of Computer Software
Computer Software
Application Software
System Software
General Purpose Application Programs
System Development Programs
Application- Specific Programs
System Management Programs
8Software development
- Custom software
- Software applications that are developed within
an organization for use by that organization - COTS software
- Commercial Off-the-shelf (COTS)
- Classify based on how it was developed
- Software developed with the intention of selling
the software in multiple copies - Outsourced software
9Software Development Selection
- Why would you choose ?
- Custom (in source)
- COTS (off-the-shelf)
- outsourced?
10General-PurposeApplication Programs
- Software Suites and Integrated Packages
Oracle E-Business Suite
Word Excel PowerPoint Access Outlook
WordPro 1-2-3 Freelance Approach Organizer
WordPerfect Quattro Pro Presentations Paradox
Corel Central
StarWriter StarCalc StarImpress StarBase StarS
chedule
11Electronic Spreadsheets and Presentation Graphics
- Electronic Spreadsheets
- Worksheet of rows and columns
- Used for calculations and charts
- E.g., Lotus 1-2-3, Microsoft Excel, Corel
QuattroPro - Presentation Graphics
- Convert numeric data into graphics displays
- Prepare multimedia presentations including
graphics, photos, animation, and video clips - E.g., Microsoft PowerPoint, Lotus Freelance,
Corel Presentations
12General-PurposeApplication Programs
- Web Browsers
- Electronic Mail and Instant Messaging (IM)
- Word Processing and Desktop Publishing
- Electronic Spreadsheets
- Database Management
- Presentation Graphics
- Personal Information Managers
- Groupware Collaboration Software
13General-PurposeApplication Programs
- Application Service Providers (ASPs)
14System SoftwareComputer System Management
- Software Interface Between End Users and
Computers
15System Software
- Operating Systems
- Utility software
- Network Software
16Operating Systems
- The User Interface
- Command-Driven
- Menu-Driven
- Graphical User Interface
17OS contain two parts
- Supervisory
- Stays in main memory
- Transient
- Can be swapped back and forth from secondary
memory
18Operating Systems
User Interface
End User Systems and Network Communications
Resource Management
Task Management
File Management
Utilities and Other Functions
Managing Data and Program Files
Providing a Variety of Support Services
Managing the Use of Hardware Resources
Managing the Accomplishment Of Tasks
19Operating Systems
- Resource Management
- Virtual Memory
- File Management
- Task Management
- Multitasking,
- Multiprocessing
- Multi-user programming
20Popular Operating Systems
- Windows
- GUI, multitasking, networking, multimedia
- Microsofts operating system
- Different versions manage servers
- Vista
- Windows XP
- Windows NT
- Windows Server 2003
- Windows 2000
- Unix
- Multitasking, multiuser, network-managing
- Portable can run on mainframes, midrange and
PCs - Solaris by Sun
- AIX by IBM
21Popular Operating Systems
- Linux
- Low-cost, powerful reliable Unix-like operating
system - Open-source
- Free
- Freeware
- Novell SUSE Linux
- Red Hat
- VA Linux
- MAC OS X
- Apple operating system for the iMac
- GUI, multitasking, multimedia
22Programming Languages
Machine Languages
Assembler Languages
23Programming Languages
High-Level Languages
Fourth-Generation Languages
24Objects
25Programming Languages
Object-Oriented Languages
Withdraw (amount)
Calculate Interest
Print Monthly Statement
Current Account Balance
Get Owner
Get Balance
Deposit (amount)
Savings Account Object
26Object-oriented Programming Languages
- Web Languages and Services
- HTML
- XML
- JAVA
- Platform Independence
- Program Applets
- JAVA2 Enterprise Edition
- Microsoft .NET Software
27Language Translator Programs
- Translate instructions written in programming
languages into machine language - Assembler
- translates assembler language statements
- Compiler
- translates high-level language statements
- Interpreter
- compiler that translates and executes each
statement in a program one at a time
28Errors (Bugs)
29E-mail, Instant Messaging and Weblogs
- E-mail
- Software to communicate by sending and receiving
messages and attachments via the Internet,
intranet or extranet - Instant messaging (IM)
- Receive electronic messages instantly
- Weblog or blog
- A personal website in dated log format
- Updated with new information about a subject or
range of subjects - Myspace
30Programming Languages
J2EE and .NET Compared
31Program Development Process
- Determine Program specs
- Work with users
- I/O layout
- Processing requirements
- Use Program Planning Tools
- Analyze the problem using
- Flow Charts
- Pseudo code
- Structured charts
- CASE tools
32Programming Development Process
- Code and enter Program
- Code programs logic into programming language
- Compile the program
- Test for errors (syntax, run execution)
- Test the program for correctness (GIGO)
- Processing
- Robustness
- Documentation
33FLOW CHARTS
- Symbolic representation of programs logic
- Pre defined symbols are used to analyze programs
logic
34Programming Logic
- Sequence
- Selection
- Looping (Iteration)
35