Information System Development
and
The System Development Life Cycle
What is an
information system (IS)
?
Hardware, software, data, people, and procedures that work
together to produce quality information
Hardware, software, data, people, and procedures that work
together to produce quality information
System—Set of components that interact to achieve common goal
System—Set of components that interact to achieve common goal
Businesses use many types of systems
The System Development Life Cycle
What are the phases of the
system development cycle
?
Phase 1. Planning
Phase 2. Analysis
Phase 3. Design
Phase 4. Implementation
Phase 5. Operating, Support, and Security
Review project requests Prioritize project requests Allocate resources
Form project development
team
Conduct preliminary investigation Perform detailed analysis activities:
Study current system
Determine user requirements Recommend solution
Acquire hardware
and software, if necessary
Develop details of
system
Develop programs, if necessary Install and test new system Train users
Perform maintenance activities
Arrange tasks into phasesphases
(groups of activities)
The System Development Life Cycle
What are guidelines for system development?
Involve usersusers (anyone for whom system is being built)
The System Development Life Cycle
Who participates
in the system
The System Development Life Cycle
What is a
systems analyst
?
Responsible for designing
Responsible for designing
and developing
and developing
information system
information system
Users’ primary contact
Users’ primary contact
person
The System Development Life Cycle
What is the
project team
?
Consists of users, systems analyst, and other IT professionals Formed to work on project from beginning to end
Project leader
The 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
Required activities
Required activities
Required activities
Goal, objectives, and
Goal, objectives, and
expectations, collectively
expectations, collectively
called scope
called scope
Goal, objectives, and
Goal, objectives, and
expectations, collectively
expectations, collectively
called scope
called scope
Time estimates for each
Time estimates for each
activity
activity
Time estimates for each
Time estimates for each
activity
activity
Cost estimates for each
Cost estimates for each
activity
activity
Cost estimates for each
Cost estimates for each
activity
activity
Activities that can take place
Activities that can take place
at same time
at same time
Activities that can take place
Activities that can take place
at same time
at same time
Order of activities
Order of activities
Order of activities
The System Development Life Cycle
What is a Gantt chart?
Popular tool used to plan and schedule time relationships
The System Development Life Cycle
What is
feasibility
?
Measure of how suitable system development will
be to the company
Operational feasibility
Schedule feasibility
Four feasibility tests:
Technical feasibility Economic
The System Development Life Cycle
What is a Gantt chart?
Popular tool used to plan and schedule time relationships
The System Development Life Cycle
What is
documentation
?
Includes reports, diagrams,
Includes reports, diagrams,
programs, and other deliverables
programs, and other deliverables
Collection and summarization
Collection and summarization
of data and information
The System Development Life Cycle
What are six data and information gathering techniques?
Review documentation Observe
Questionnaire Interview
Joint-application
design (JAD) session
The System Development Life Cycle
What are some reasons to create or modify an
information system?
Competition can lead to change
To improve existing system
Outside group may mandate change To correct problem
The System Development Life Cycle
What is a request for system services?
Formal request fornew or modified information system
Also called
The System Development Life Cycle
What is the
planning phase
?
Begins when steering committee receives project request
Steering
Steering
committee—
committee—
decision-making
decision-making
body for the
body for the
company
company
Function of committee:
Review and
Review and
approve project
approve project Allocate resourcesAllocate resources
Form project
Form project
development team
development team
Prioritize project
The System Development Life Cycle
What is the
analysis phase
?
Conduct preliminary
Conduct preliminary
investigation, also
investigation, also
called feasibility
called feasibility
study
study
Perform detailed
Perform detailed
analysis
The System Development Life Cycle
What is the
preliminary investigation
?
Determine exact nature of problem or improvement and
whether it is worth pursuing
The System Development Life Cycle
What is detailed analysis?
Sometimes called logical design
2. Determine user’s wants, needs, and requirements
3. Recommend solution
Presented to
Presented to
steering
steering
committee, which
committee, which
decides how
decides how
system will be
system will be
developed
developed
The System Development Life Cycle
What is the
system proposal
?
Assesses Assessesfeasibility
feasibility
of each
of each
alternative
alternative
solution
solution
Recommends
Recommends
the most
the most
feasible
feasible
solution for the
solution for the
project
The System Development Life Cycle
What are possible solutions?
Buy packaged software—prewritten packaged software
software available for purchase Buy packaged softwarepackaged software—prewritten
software available for purchase
Outsource
Outsource—have outside source develop software
Outsource
Outsource—have outside source develop software
Write own custom software—software custom software
developed at user’s request
Write own custom softwarecustom software—software developed at user’s request
Vertical market software—designed for
particular industry
Vertical market software—designed for
particular industry
Horizontal market software—meets needs
of many companies
Horizontal market software—meets needs
The System Development Life Cycle
What is the
design phase
?
Acquire hardware and software
Acquire hardware and software
Develop all details of new or modified information system
Test and evaluate
Test and evaluate
vendor proposals
vendor proposals
Test and evaluate
Test and evaluate
vendor proposals
vendor proposals
The 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
Solicit vendor
proposals
proposals
Solicit vendor
Solicit vendor
proposals
proposals
Make a decision
Make a decision
Make a decision
Make a decision
Identify technical
Identify technical
specifications
specifications
Identify technical
Identify technical
specifications
The System Development Life Cycle
What are three basic documents used to
summarize technical specifications?
Less formal method that uses standard form
Vendor quotes price(s) for listed
product(s)
Vendor selects product(s) that
meet(s) your requirements and then quotes price(s) Identifies
product(s) you want
Request for proposal (RFP)
Request for proposal (RFP)
Request for quotation (RFQ)
The 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
The 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
The System Development Life Cycle
What is a detailed design?
Includes several activities
Database design Database
design output designInput and Input and
output design Program design Program
design
The System Development Life Cycle
What is a mockup?
The System Development Life Cycle
What is a layout chart?
Input or output that contains programming-like notations for
The System Development Life Cycle
What is a
prototype
?
Working model of proposed system
Working model of proposed system
Beginning a prototype too early may lead to
problems
Beginning a prototype too early may lead to
The System Development Life Cycle
What is
computer-aided software engineering (CASE)
?
Software tools designed to support activities of systemConvert to new system
Convert to new system
The 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
Train users
Train users
Install and test new system
The System Development Life Cycle
What are the four types of tests performed by
system developers?
Verifies application works with other
Systems test
Integration Test Unit Test
Verifies each individual program works by itself
Verifies all programs in application work
together
Verifies the new system works with actual data
The System Development Life Cycle
What is
training
?
Showing users exactly how they will use new hardware
The System Development Life Cycle
What are conversion strategies?
The System Development Life Cycle
What is the
operation,
support, and security phase
?
Perform maintenance activities
Monitor system performance
Assess system security
The System Development Life Cycle
What is a
computer security plan
?
Summarizes in writing all of the safeguards that are in place to
protect a company’s information assets
For each risk,
For each risk,
identify the
identify the
safeguards
safeguards
that exist
that exist
to detect,
to detect,
prevent, and
prevent, and
recover from a loss
recover from a loss
Identify all
Identify all
security risks
security risks
that may
that may
cause an
cause an
information
information
loss
loss
Identify all
Identify all
information
information
assets of an
assets of an
organization
Programming Languages
What is a
computer program
?
Set of instructions that directs computer to perform tasks
Programming Languages
What are low-level languages and high-level languages?
High-level language High-level language
runs only on one type of computer Machine-dependent
runs only on one type of computer Often machine-independent
can run on many different
types of computers and operating systems
Often machine-independent
can run on many different
types of computers and operating systems
Machine
Machine and assembly languages assembly languages
are low-level
Machine
Machine and assembly languagesassembly languages
Programming Languages
What is
machine language
?
Only language computerdirectly recognizes
Uses a series of binary digits
(1s and 0s) with a combination of numbers and letters that
Programming Languages
What is
assembly language
?
Instructions made up of
symbolic instruction codes, meaningful abbreviations and codes
Source program contains
Often called third-generation third-generation language (3GL)
language (3GL)
Programming Languages
What is a
procedural language
?
Uses series of English-like words to write instructions Programmer writes
instructions that tell computer what to
Programming Languages
What is a compiler?
Program that
Programming Languages
What is an
interpreter
?
Program thattranslates and executes one program code
statement at a time
Does not produce
Programming Languages
What is
COBOL
?
Designed for business applications
English-like statements make code easy to read, write, and
maintain
COmmon
Programming Languages
What is
C
?
Powerful language originally designed to write system
software
Programming Languages
What is an object-oriented programming (OOP) language?
Used to implement object-oriented
design
Major benefit is ability to reuse existing
objects
Event-driven
Event-driven— checks for and responds to set of events
Java, C++, C#, and Visual Basic are complete
object-oriented languages
Object is item that contains
data and procedures
that act on data
Event is action to
Programming Languages
What is
Java
?
Developed by SunMicrosystems
Similar to C++ but
Programming Languages
What is
C++
?
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
Programming Languages
What is
Visual Studio
?
.NET is set of technologies that allows program to run on Internet Comprised of Visual Basic, Visual C++, Visual C#, and Visual J#
Step 1. The developer designs the user interface.
Step 2. The developer assigns properties to each object on the form.
Step 3. The developer
Programming Languages
What is
Delphi
?
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
Programming Languages
What is a
visual programming language
?
Visual programming environment (VPE)
allows developers to drag and drop objects
to build programs
Examples include Alice,
Examples include Alice,
Mindscript and Prograph
Mindscript and Prograph
Provides visual or
Provides visual or
graphical interface for
graphical interface for
creating source code
Programming Languages
What is
RPG
(Report Program Generator)?
Used for generating reports, performing computations, and
Programming 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
Programming Languages
What are other available programming languages?
ALGOL
ADA APLAPLAPLAPL
BASIC BASIC BASIC
BASIC FORTHFORTHFORTHFORTH FORTRANFORTRANFORTRANFORTRAN HYPERTALKHYPERTALKHYPERTALKHYPERTALK
LISP LISP LISP
LISP LOGOLOGOLOGOLOGO MODULA-2MODULA-2MODULA-2MODULA-2
PASCAL PASCAL PASCAL
Programming Languages
What is an
application generator
?
Program that creates source code or machine code from
specification
Consists of report writer, form, and menu generator
Programming Languages
What is
HTML
(Hypertext Markup Language)?
Programming Languages
What is a scripting language?
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)
Programming Languages
What is
dynamic HTML (DHTML)
?
Allows developers to
include more graphical
Programming Languages
What are
XHTML
,
XML
, and
WML
?
XHTML XHTML
(Extensible HTML) (Extensible HTML)
enables Web sites to be displayed more easily on microbrowsers
XML XML
(Extensible Markup Language) (Extensible Markup Language)
allows developers to create customized tags
WML WML
(Wireless Markup Language)
Includes features of HTML and XML
Many PDAs and smart Server sends entire record to
client, enabling client to do much of processing without
going back to server
Programming Languages
What is
Ajax
?
Stands for Asynchronous JavaScript and XML
Method of creating interactive Web applications designed to
provide immediate response
Programming Languages
What is
Ruby on Rails
(RoR)?
Also called Rails
Open source framework that provides technologies for developing
object-oriented, database-driven Web sites
Ruby is derived from a variety of languages, including Ada, LISP,
Flash
Flash
Expression
Expression
Web
Web
Programming Languages
What is
Web page authoring software
?
Creates sophisticated Web pages without using HTML Generates HTML
Dreamweaver
Programming 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
The Program Development Cycle
What is the
program development cycle
?
Steps programmers use to build computer programs Programming team
—Group of programmers
The Program Development Cycle
What is a
sequence control structure
?
Control structure that shows actions following each other in
order
The 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
The Program Development Cycle
The Program Development Cycle
What is a
repetition control structure
?
Enables program to perform one or more actions repeatedly
Do-while control
structure—repeats as long as condition is true
Do-until control