Title: MIS 300 Management Information Systems
1MIS 300 Management Information Systems
- Software and Programming Overview
- A Prelude to Actual Computer Programming
2Overview of Software
- Basic Types of Software
- System software
- Application software
- Creating Software via Programming
- Programming Concepts
- Programming in Visual Basic for Applications
(next week)
3Software Classifications
4Further Classification of Software
- Application Software
- SAP
- Quicken
- Voyager
- System Development Software
- Access, Visual Basic
- Visual Studio, InterDev
- PowerBuilder
- System Software
- Windows 98, 2000, NT, XP
- UNIX, Linux
- Device Drivers
- End-user Software
- Excel, Word, Access
- Photoshop
5Systems Software
- Common Hardware Functions
- User Interface
- Hardware Independence
- Memory Management
- Processing Tasks
- Networking Capability
- Access to System Resources
- File Management
6The OS and the API
7GUI
- Whats a GUI?
- What are examples of GUIs?
- Whats difference between GUI and the OS?
- What is not a GUI?
8Microsoft Launches Windows XPOct 25, 2001
- New User Interface
- New multimedia programs (Media Player 8.0)
- IE6 and Internet Messenger
- Stability speed similar to Win 2000
- Remote Assistance and new Activation procedure
- Home networking tools
9More About XP
PC Labs _at_ PC Magazine
- 128 MB RAM recommended but 256 MB is better
- 550MHz or faster CPU clock nice but 300 OK
- Some old DOS programs wont work
- Get XP Pro if doing home networking
10XP Activation Scheme (WPA)
- Goal is to reduce piracy
- Must activate XP within 30 days via Internet or
telephone - Remote assistance
- HW change may require reactivation
- Preactivation by OEMs
- Invasive? Big brother?
- 25 digit Win XP product ID code
42 digit activation code
- based on video card, network card, SCSI
controller, hard drive, CPU, and memory
configuration - creates nonunique
WPA Tool
11There are alternatives
Linux
Mac OS X (10.1)
12Multi-User OS
- Juggle multiple jobs from multiple users wanting
multiple resources - Network OS worries about nodes on network,
communication - UNIX, Linux, Windows NT/2000, Novell Netware
- Issues with OS
- Compatibility (e.g. Wintel and Mac)
- What is the OS? (e.g. MS anti-trust suit)
13What is Programming?
- What is computer programming?
- Translation of idea of what computer should do to
a set of instructions that a computer can execute - Algorithms
- How do you write computer programs?
- Divide and conquer (decomposition, modules)
- Use structured programming concepts
- Plan, try, make mistakes, think, get it working
- Commonly used programming languages?
- C, C, Visual Basic, Java, COBOL
14Programming a translation process
15From Source Code to Executable Program
Source code
Executable Program
Source code
Source code
Linker
Compiler
Libraries
Object Code
16Programming Languages - Trends
- Greater non-procedurality
- Tell the computer What to do, not How to do it
- Greater modularity and reusability
- Greater machine and data independence
- Java
- easy to talk to different databases
- Tighter links between analysis and programming
- CASE let the computer write some of the program
17Basing System on DBMS
- Why use general DBMS?
- Data access
- Data independent from application
- Choose DBMS that can grow with the business
- Other software issues due to growth of business
to multiple sites?
18CASE Tools
- Let the computer do some of the programming
- Tools range from simple-focused to
complex-comprehensive - Form and Report Wizards in Access
- CoolGen, Oracle Designer in MIS 316
19From user requirements to executable machine code
203GL and 4GL
- 3GL High level language
- C, Fortran, Basic, C, VB, Java, Pascal, COBOL
- Very, very, very structured English
- 4GL Attempt to make programming easier
- Often subset of other package (e.g. DBMS)
- Query languages, report generators
- CASE tools
21Special Purpose Programming Languages
- Simulation (and other) Modeling
- Spreadsheets
- Very flexible
- Error prone
- Excel has its own programming language (VBA)
22What is Visual Basic for Applications?
Its the glue!
- Common programming component shared among MS
Office applications - Shared with Visual Basic 4.0 and later
- Creation and manipulation of application objects
such as spreadsheets, databases, documents, mail,
projects - Facilitates application interoperability
- Make different applications work together
23 Why VBA IT ALLOWS YOU TO DO STUFF IN AN
AUTOMATED FASHION
- Create applications based on MS Office products
- Manipulate objects in object model of
applications - Customize way product appears
- Leverage capabilities of pre-built objects in
various applications
Limited only by your imagination
24Why Learn to Program in VBA?
- Algorithmic thinking important to business
analysis - Business solutions often require some programming
- Huge productivity gains possible
- Ability to code is a very valuable skill
- Its fun
25Whats needed from you
- No prior programming experience required
- A logical mindset
- Willingness to experiment and learn
- Plenty of practice
- Perseverance
26VBAGeneral ProgrammingObject Manipulation
VBA Applications
General Programming Concepts
Application Specific Object Model