Title: Chapter 11 Information System Development and Programming Languages
1Chapter 11 Information System Development and
Programming Languages
2Chapter 11 Objectives
Discuss the importance of project management,
feasibility assessment, documentation, data and
information gathering techniques, and information
systems security during system development
List other programming languages and other
program development tools
Describe various ways to develop Web pages
Discuss the purpose of each phase in the system
development cycle
List the six steps in the program development
cycle
Differentiate between low-level languages and
procedural languages
Explain the basic control structures used in
designing solutions to programming problems
Identify the benefits of object-oriented
programming languages and program development
tools
3The System Development Life Cycle
- What is an information system (IS)?
Hardware, software, data, people, and procedures
that work together to produce quality information
SystemSet of components that interact to achieve
common goal
Businesses use many types of systems
p. 406
4The System Development Life Cycle
- What are the phases of the system development
cycle?
Phase 2. Analysis
- Conduct preliminary investigation
- Perform detailed analysis activities
- Study current system
- Determine user requirements
- Recommend solution
Phase 1. Planning
Phase 3. Design
- Review project requests
- Prioritize project requests
- Allocate resources
- Form project development team
- Acquire hardware and software, if necessary
- Develop details of system
Phase 4. Implementation
Phase 5. Operating, Support, and Security
- Develop programs, if necessary
- Install and test new system
- Train users
- Convert to new system
- Perform maintenance activities
- Monitor system performance
- Assess system security
p. 406 Fig. 11-1
5The System Development Life Cycle
- What are guidelines for system development?
Arrange tasks into phases (groups of activities)
- Involve users (anyone for whom system is being
built)
Develop clearly defined standards (procedures
company expects employees to follow)
p. 407
6The System Development Life Cycle
- Who participates in the system development life
cycle?
p. 407 Fig. 11-2
7The System Development Life Cycle
- What is a systems analyst?
Responsible for designing and developing
information system
Users primary contact person
p. 407
8The System Development Life Cycle
- What is the project team?
Formed to work on project from beginning to end
Consists of users, systems analyst, and other IT
professionals
Project leaderone member of the team who
manages and controls project budget and schedule
p. 408
9The System Development Life Cycle
- What is project management?
- Process of planning, scheduling, and controlling
activities during system development cycle - Project leader identifies elements for project
Required activities
Goal, objectives, and expectations, collectively
called scope
Time estimates for each activity
Cost estimates for each activity
Activities that can take place at same time
Order of activities
p. 408
10The System Development Life Cycle
- Popular tool used to plan and schedule time
relationships among project activities
p. 409 Fig. 11-3
11The System Development Life Cycle
Operational feasibility
Measure of how suitable system development will
be to the company
Four feasibility tests
Schedule feasibility
Economic feasibility (also called cost/benefit
feasibility)
Technical feasibility
p. 409
12The System Development Life Cycle
Collection and summarization of data and
information
Includes reports, diagrams, programs, and other
deliverables
p. 409
13The System Development Life Cycle
- What are six data and information gathering
techniques?
- Review documentation
- Observe
- Survey
- Interview
- Joint-application design (JAD) session
- Research
p. 410 Fig. 11-4
14The System Development Life Cycle
- What are some reasons to create or modify an
information system?
To improve existing system
To correct problem in existing system
Competition can lead to change
Outside group may mandate change
p. 410
15The System Development Life Cycle
- What is a request for system services?
- Formal request for new or modified information
system - Also called project request
p. 411 Fig. 11-5
16The System Development Life Cycle
- What is the planning phase?
Begins when steering committee receives project
request
Steering committeedecision-making body for the
company
Function of committee
Review and approve project requests
Allocate resources
Form project development team for each approved
project
Prioritize project requests
p. 413
17The System Development Life Cycle
- What is the analysis phase?
p. 413
18The System Development Life Cycle
- What is the preliminary investigation?
- Determine exact nature of problem or improvement
and whether it is worth pursuing
- Findings are presented in feasibility report
p. 413 - 414 Fig. 11-6
19The System Development Life Cycle
- What is detailed analysis?
1. Study how current system works
2. Determine users wants, needs, and requirements
3. Recommend solution
Sometimes called logical design
p. 415
20The System Development Life Cycle
- What is the system proposal?
p. 415
21The System Development Life Cycle
- What are possible solutions?
Horizontal market softwaremeets needs of many
companies
Buy packaged softwareprewritten software
available for purchase
Vertical market softwaredesigned for particular
industry
Write own custom softwaresoftware developed at
users request
Outsourcehave outside source develop software
p. 415
22The System Development Life Cycle
- What is the design phase?
Acquire hardware and software
Develop all details of new or modified
information system
p. 416
23The System Development Life Cycle
- What is needed to acquire new hardware and
software?
- Identify all hardware and software requirements
of new or modified system
Solicit vendor proposals
Identify technicalspecifications
Test and evaluate vendor proposals
Make a decision
p. 416
24The System Development Life Cycle
- What are three basic documents used to summarize
technical specifications?
Request for quotation (RFQ)
Request for proposal (RFP)
Request for information (RFI)
p. 416
25The System Development Life Cycle
- What is a value-added reseller (VAR)?
- Complete system provided by value-added reseller
- Value-added reseller (VAR) purchases products
from manufacturer and then resells them, offering
additional services with product
p. 417 Fig. 11-7
26The System Development Life Cycle
- How do systems analysts test software products?
- References from vendor
- Talk to current users of product
- Product demonstrations
- Trial version of software
- Benchmark test measures performance
p. 417
27The System Development Life Cycle
- What is a detailed design?
Detailed design specifications for components in
proposed solution
Includes several activities
Database design
Input and output design
Program design
p. 418
28The System Development Life Cycle
- Sample of input or output that contains actual
data
p. 418 Fig. 11-8
29The System Development Life Cycle
- Input or output that contains programming-like
notations for data items
p. 419 Fig. 11-9
30The System Development Life Cycle
Working model of proposed system
Beginning a prototype too early may lead to
problems
p. 419
31The System Development Life Cycle
- What is computer-aided software engineering
(CASE)?
- Software tools designed to support activities of
system development cycle
p. 419 Fig. 11-10
32The System Development Life Cycle
- What is the implementation phase?
- Purpose is to construct, or build, new or
modified system and then deliver it to users
Convert to new system
Train users
Install and test new system
Develop programs
p. 420 - 421
33The System Development Life Cycle
- What are the four types of tests performed by
system developers?
Systems test
Unit Test
Verifies each individual program works by itself
Verifies all programs in application work together
Integration Test
Acceptance Test
Verifies application works with other applications
Verifies the new system works with actual data
p. 420
34The System Development Life Cycle
- Showing users exactly how they will use new
hardware and software in system
p. 420 - 421 Fig. 11-11
35The System Development Life Cycle
- What are conversion strategies?
- Used to change from old system to new system
p. 421
36The System Development Life Cycle
- Perform maintenance activities
Monitor system performance
- What is the operation, support, and security
phase?
- Provides ongoing assistance after system is
implemented
Assess system security
p. 422
37The System Development Life Cycle
- What is a computer security plan?
- Summarizes in writing all of the safeguards that
are in place to protect a companys information
assets
For each risk,identify thesafeguards that
exist to detect, prevent, and recover from a
loss
Identify allsecurity risksthat may cause an
informationasset loss
Identify allinformation assets of an
organization
p. 422
38Design Phase
Video A Tour of Lucasfilm Data Center
39The Program Development Cycle
- What is the program development cycle?
- Steps programmers use to build computer programs
- Programming teamGroup of programmers working on
program
p. 438 - 439 Fig. 11-29
40Programming Languages
- What is a computer program?
- Set of instructions that directs computer to
perform tasks
- Programming languageused to communicate
instructions
p. 423 Fig. 11-12
41Programming Languages
- What are low-level languages and high-level
languages?
High-level language
Low-levellanguage
Machine-dependentruns only on one type of
computer
Often machine-independentcan run on many
different types of computers and operating
systems
Machine and assembly languages are low-level
p. 424
42Programming Languages
- What is machine language?
- Only language computer directly recognizes
- Uses a series of binary digits (1s and 0s) with a
combination of numbers and letters that represent
binary digits
p. 424 Fig. 11-13
43Programming Languages
- What is assembly language?
- Instructions made up of symbolic instruction
codes (mnemonics). Meaningful abbreviations and
codes - Source program contains code to be converted to
machine language
p. 424 - 425 Fig. 11-14
44Programming Languages
- What is a procedural language?
Uses series of English-like words to write
instructions
Programmer writes instructions that tell computer
what to accomplish and how to do it
Often called third-generation language (3GL)
p. 425
45Programming Languages
- Program that converts entire source program into
machine language before executing it - Translator
- compiler
- interpreter
p. 425 Fig. 11-15
46Programming Languages
- Program that translates and executes one program
code statement at a time
- Does not produce object program
- Many intrepreters include a Just-In-Time compiler
(JITer)
p. 426 Fig. 11-16
47Programming Languages
- Designed for business applications
- English-like statements make code easy to read,
write, and maintain - COmmon Business-Oriented Language
p. 426 Fig. 11-17
48Programming Languages
- Powerful language originally designed to write
system software
/ Compute Regular Time Pay
/ regular_time_pay regular_time_hours
hourly_pay_rate / Computer Overtime Pay
/ if
(over_time_hours gt 0) over_time_pay
over_time_hours (pay_rate 1.5) else
over_time_pay 0 / Compute Gross Pay
/ gross_pay
regular_time_pay over_time_pay / Print Gross
Pay printf(The gross pay is 8.2f\n, gross_pay)
p. 427 Fig. 11-18
49Programming Languages
- What is an object-oriented programming (OOP)
language?
Used to implement object-oriented design
Major benefit is ability to reuse and modify
existing objects
- Event-drivenchecks for and responds to set of
events
Java, C, and C, are complete object-oriented
languages
Object is item that contains data and
procedures that act on data
Event is action to which program responds
- Object-oriented Programming
- Procedural Programming
p. 427
50Programming Languages
- Developed by Sun Microsystems
- Uses just-in-time (JIT) compiler (in interpreter)
to convert source code into machine code
p. 427 - 428 Fig. 11-19
51Programming Languages
- Includes all elements of C, plus additional
features for working with object-oriented
concepts - Used to develop database and Web applications
What is C?
- Object-oriented programming language based on C
- Accepted as a standard for Web applications and
XML-based Web services
p. 428
52Programming Languages
- .NET is set of technologies that allows program
to run on Internet - Comprised of Visual Basic, Visual C, and Visual
C
p. 428 - 429 Fig. 11-20
53Programming Languages (Enterprise Software)
- Powerful visual programming tool
- Ideal for large-scale enterprise and Web
applications
What is PowerBuilder?
- Another powerful visual programming tool
- Best suited for Web-based and large-scale
object-oriented applications
p. 429
54Programming Languages
- What is a visual programming language?
Provides visual or graphical interface for
creating source code
Examples include Alice, Mindscript and Prograph
p. 429
55Programming Languages
- What is RPG (Report Program Generator)?
- Used for generating reports, accessing data, and
updating data in databases
/free //Compute Regular Time Pay
regular_time_pay regular_time_hours
hourly_pay_rate
//Compute Overtime Pay if over_time_hours gt 0
over_time_pay over_time_hours
(pay_rate 1.5) else
over_time_pay 0 endif //Compute Gross
Pay gross_pay regular_time_pay
over_time_pay //Print Gross Pay except
GrPay /end-free
p. 430 Fig. 11-21
56Programming Languages
- What is a fourth-generation language (4GL)?
- Nonprocedural language that allows access to data
in database - Popular 4GL is SQL, query language that allows
users to manage data in relational DBMS
p. 430 Fig. 11-22
57Programming Languages
- What are other available programming languages?
ALGOL
Ada
APL
BASIC
Python
FORTRAN
Forth
LISP
Modula-2
Logo
Pascal
Ruby
PL/1
PILOT
Smalltalk
p. 431
58Programming Languages
- What is an application generator?
- Program that creates source code or machine code
from specification - Consists of report writer, form, and menu
generator
- Form provides areas for entering data
p. 431 - 432 Fig. 11-24
59Programming Languages
- What is HTML (Hypertext Markup Language)?
p. 433 Fig. 11-25
60Programming Languages
- What is a scripting language?
- Creates a script that is interpreted. It runs
inside a browser.
- Typically easy to learn and use
- JavaScript
- Perl (Practical Extraction and Report Language)
- PHP (PHP Hypertext Processor)
- Rexx (Restructured eXtended eXecutor)
- Tcl (Tool Command Language)
- VBScript (Visual Basic, Scripting Edition)
p. 434 - 435 Fig. 11-26
61Programming Languages
- What is dynamic HTML (DHTML)?
- Allows developers to include more graphical
interest and interactivity in Web page
p. 435 Fig. 11-27
62Programming Languages
- What are XHTML, XML, and WML?
Includes features of HTML and XML
XHTML (Extensible HTML)enables Web sites to be
displayed more easily on microbrowsers
XML (Extensible Markup Language)allows
developers to create customized tags
Server sends entire record to client, enabling
client to do much of processing without going
back to server
RSS 2.0 and ATOM
WML (Wireless Markup Language)allows developers
to design pages specifically for microbrowsers
Many Internet-enabled smart phones and PDAs use
WML as their markup language
p. 436
63Programming Languages
- What is Ajax? (update changes to a web page)
- Stands for Asynchronous JavaScript and XML
- Method of creating interactive Web applications
designed to provide immediate response - Combines JavaScript, HTML or XHTML, and XML
- Google Maps and Flickr use Ajax
What is Atom?
- Along with RSS is a set of specifications that
content aggregators use to distribute content to
subscribers. - The name Atom applies to a pair of related
standards. The Atom Syndication Format is an XML
language used for web feeds, while the Atom
Publishing Protocol (AtomPub or APP) is a simple
HTTP-based protocol for creating and updating web
resources.
p. 436
64Programming Languages
- What is Ruby on Rails (RoR)?
- Open source framework that provides technologies
for developing object-oriented, database-driven
Web sites - Designed to make Web developers more productive
p. 436
65Programming Languages
- What is Web page authoring software?
- Creates sophisticated Web pages without using
HTML - Generates HTML
p. 436 - 437
66Programming Languages
- What is multimedia authoring software?
- Combines text, graphics, animation, audio, and
video into interactive presentation - Used for computer-based training (CBT) and
Web-based training (WBT)
- Software includes Toolbook and Director
p. 437 Fig. 11-28
67The Program Development Cycle
- What is a sequence control structure?
- Control structure that shows actions following
each other in order
- Control structure depicts logical order of
program instructions
p. 440 Fig. 11-30
68The Program Development Cycle
- What is a selection control structure?
- Tells program which action to take, based on a
certain condition - Two types
- Case control structure
- If-then-else control structureyields one of two
possibilities true or false
p. 440 Fig. 11-31
69The Program Development Cycle
- What is a case control structure?
- Yields one of three or more possibilities
p. 440 - 441 Fig. 11-32
70The Program Development Cycle
- What is a repetition control structure?
- Enables program to perform one or more actions
repeatedly
- Do-while control structurerepeats as long as
condition is true (pre-test)
- Do-until control structurerepeats until
condition is true (post-test)
p. 442 Figs. 11-3311-34
71Companies on the Cutting Edge
Video Electronic Arts Going Mobile
72Summary of Information System Development and
Programming Languages
Phases in the system development life cycle
Various programming languages and program
development tools used to create and modify
computer programs
Web development and multimedia development tools
Guidelines for system development
Program development cycle
Activities that occur during the entire system
development cycle
Chapter 11 Complete