360 likes | 546 Views
Chapter 4 Computer Software. Learning 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.
E N D
Learning 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
Software A single program or a collection of programs which performs many task and/or system related functions Two types of software: • Application • System
Application Software • Personal Information Manager • Groupware • Organizational • Inter-organizational
Personal 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
Organizational & 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
Overview of Computer Software Computer Software Application Software System Software General Purpose Application Programs System Development Programs System Management Programs Application- Specific Programs
Software 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
Software Development Selection • Why would you choose ? • Custom (in source) • COTS (off-the-shelf) • outsourced?
Corel WordPerfect Office Microsoft Office Lotus SmartSuite Sun Star Office Programs Word Processor Spreadsheet Presentation Graphics Database Manager Personal Info. Manager General-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 StarSchedule
Electronic 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
General-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
General-PurposeApplication Programs Application Service Providers (ASPs)
End Users Application Software System Software Computer Hardware System Software:Computer System Management Software Interface Between End Users and Computers
System Software • Operating Systems • Utility software • Network Software
Operating Systems The User Interface • Command-Driven • Menu-Driven • Graphical User Interface
OS contain two parts Supervisory • Stays in main memory Transient • Can be swapped back and forth from secondary memory
Operating Systems User Interface End User Systems and Network Communications File Management Utilities and Other Functions Resource Management Task Management Providing a Variety of Support Services Managing Data and Program Files Managing the Accomplishment Of Tasks – Managing the Use of Hardware Resources
Operating Systems Resource Management • Virtual Memory File Management Task Management • Multitasking, • Multiprocessing • Multi-user programming
Popular Operating Systems • Windows • GUI, multitasking, networking, multimedia • Microsoft’s 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
Popular 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
Use Binary Coded Instructions 1010 1011 1100 11001 11010 11011 Use Symbolic Coded Instructions LOD Y ADD Z STR X Programming Languages Machine Languages Assembler Languages
Use Brief Statements or Arithmetic BASIC: X = Y + Z COBOL: COMPUTE X = Y + Z Use Natural and Nonprocedural Statements SUM THE FOLLOWING NUMBERS Programming Languages High-Level Languages Fourth-Generation Languages
Objects What are objects?
Programming Languages Object-Oriented Languages Withdraw (amount) Calculate Interest Print Monthly Statement Current Account Balance Get Owner Get Balance Deposit (amount) Savings Account Object
Object-oriented Programming Languages Web Languages and Services HTML XML JAVA • Platform Independence • Program Applets JAVA2 Enterprise Edition Microsoft .NET Software
Language 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
Errors (Bugs) • Logical • Syntax • Execution
E-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
Programming Languages J2EE and .NET Compared
Program 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
Programming Development Process • Code and enter Program • Code program’s logic into programming language • Compile the program • Test for errors (syntax, run execution) • Test the program for correctness (GIGO) • Processing • Robustness • Documentation
FLOW CHARTS • Symbolic representation of program’s logic • Pre defined symbols are used to analyze program’s logic
Programming Logic • Sequence • Selection • Looping (Iteration)