Title: Software and Tools for Software Development
1Software and Tools for Software Development
- System Software
- Application Software
- Software for Software Development
2Software Growth
- 1000s of types of software products
- now sold at local discount and even hardware
stores like Lowes - price depends on demand and sophistication of
product
3System Software
- Programs
- Supervisor
- Resident
- Transient
- Manages Resources
- Controls Input/Output
- Communications
4Operating Systems
- Manage resources (files,memory)
- control input and output processes
- lets user put in commands
5Commonly Used Operating Systems (OS)
- MS-DOS (PC-DOS)
- Microsoft Windows
- OS/2
- Macintosh System 7.5
- UNIX/Linux
6OS Classification
- Single User Single Tasking
- Multitasking
- Multi-user
- Multiprocessing
7Memory Management by OS
- Buffer
- Random Access Memory (RAM)
- Virtual Memory
- Paging
- Swapping
- Thrashing
8Other important OS functions
- Printing
- Spooling
- Device Driver Management
- Interrupt Processing
- Security Administration
9Application Software and Packages
- Software that solves a specific problem
- makes the computer useful
- special-purpose to general purpose
- Billion dollar business
- productivity, graphics, business, personal info,
video, engineering, sound
10So Much More
- Advantages and Disadvantages of Suites
- Accounting Programs
- Paint Programs versus Draw Programs
- CAD and CAM
- Computer-Generated Animation
- Home Entertainment
11Integrated Packages and Software Suites
- integrated packages - combines word processing,
spreadsheet, dB and graphics into one ( Microsoft
Works, ClarisWorks, LotusWorks) - price, common environment are advantages
- less features or versatility are disadvantages
12Integrated Packages and Software Suites
- a suite is a collection of full-featured,
stand-alone productivity products ( Microsoft
Office, Lotus SmartSuite, and PerfectOffice) - common structure and interface are advantages
- more expensive and more disk space are
disadvantages
13Other Software Applications
- PIM
- Contact Management
- Calendar and Schedule Management
- Task and Project Management
- Mail Merge and Print
Weekly
Schedule
14More Software Applications
- Accounting and Personal Finance
- Painting, Drawing, and Photo-Editing
- CAD and CAM
15Accounting Programs
- large firms automatically computerized accounting
but for small firms it was to costly - today with more affordable software like
QuickBooks, DacEasy and Solomon, small firms
enjoy the same productivity
16Personal Finance Programs
- keep track of checking accounts, saving accounts,
loan balances - financial calculators, categorize expenses, print
check - Quicken by Intuit, Microsoft Money
17Painting Programs
- paint programs use a technique called bit mapping
- turn on individual pixels
- pixel is a picture element
- every monitor is made up of pixel
- the number of pixels on the screen is called the
resolution
18Painting
- can create freehand images on the screen or use
the prepared shapes - good for creative artists
- PC paintbrush
19Draw
- Instead of turning on individual picture
elements, draw programs use vector graphics (i.e.
do their drawing with vectors) - objects are created with vectors that can be move
around or erased easily - CorelDraw, Adobe Illustrator and Claris MacDraw
20Presentation Graphics
- software for making and delivering presentations
- Microsoft PowerPoint, Adobe Freelance
21Photo Editing
- like a picture created with a high-resolution
paint program, a digitized photograph or a
photograph captured with a digital camera is a
bit-mapped image - digital image processing software allows you to
manipulate images - Adobe Photoshop
22Photo Editing
- can remove red eye, remove imperfections
- crop, distort, combine photographs
- create fabricated images that show no evidence of
tampering (tabloids) - experts are questioning whether photographs
should be allowed as evidence in courts
233-D modeling Software
- create three-dimensional objects
- objects can be rotated, stretched and combined
with other model objects to create 3-D scenes - used in modern films
24CAD/CAM
- Computer-Aided Design/Computer-Aided
Manufacturing - 3-D graphics
- engineers, designers and architects
- products range from computer chips to public
buildings - when design in completed, translated directly
into template for manufacturing
25Animation
- creating motion form still pictures
- create frame by frame
- computer automates the repetitive process
- instead of drawing every frame, can create key
frames and objects and the software fills in the
gaps - added 3-D
26More Software Applications
27More Software Applications
28And More Software Applications
- Animation Graphics
- - Morphing
- Home Entertainment
29Digitized Video
- a hardware circuit board on a computer accepts
input from a TV or VCR and converts the images to
digital format at a rate of of between 15 and 30
frames a second, capturing full-motion video - full-motion video - a term applied to video
movies that can be edited and shown on a computer
after being digitized
30Digitized Video
- QuickTime for Macs, Windows and Video
- once the video clips are digitized they can be
edited, morphed, cropped just like other images - heavy hardware demands - LARGE hard disk
- good data compression
31The Synthetic Musician
- sound can be digitized - digitally recorded or
synthesized - synthetically generated - sound card
- any sound can be captured with an audio digitizer
and stored as a data file - to play a digitized sound, convert to analog and
play through a speaker
32Software for Developing Software
- Programming Languages
- Design Tools
- Computer Aided Software Engineering
33Programming Development
- Define the Problem
- Develop an Algorithm
- Code the Program
- Test the Program
- Prepare Documentation
34Programming Languages
- BASIC
- COBOL
- FORTRAN
- Pascal
- C
- Object-Oriented
- C
- Visual BASIC
35Program
- instructions written in a programming language to
solve a problem - many programming languages each has its own
strengths - compiled or interpreted
36Questions?