Beruflich Dokumente
Kultur Dokumente
Chapter 12
Systems Development
Introduction to MIS
Outline
How do you create the software tools needed for your
organization?
What main options exist for building information
systems?
How do you control a major development project?
Why is control so important?
Is SDLC always the best approach? What other
methodologies could be used?
How do you analyze and annotate a process-based
system?
How is object-oriented design different from process
design?
Can software be located in different places?
Introduction to MIS
Systems Development
Introduction to MIS
Primary Methodology Choices
Large projects,
formal control
Decision support,
analyses, and
reports
Prototyping
Single user,
reports and one-
time computations End user development
Introduction to MIS
Build or Buy Options
Development
time
Introduction to MIS
Programming Basics
Sequential execution: Statements are executed in order.
Parallel execution: Groups of code are executed at the same time.
Variables: Containers to hold data
Computations
Conditions: If – Then – Else
Loops: While – End
Subroutines and Functions: Break code into manageable pieces.
Input/Output: Transferring data
Introduction to MIS
Sample Code Structure
Introduction to MIS
Individual Development: Pseudocode
Project Evaluation (given a discount factor)
Introduction to MIS
Event-Driven Environments
onactivate ondrag onmouseleave
onafterupdate ondragend onmousemove
onbeforeupdate ondragenter onmouseout
onbeforecopy ondragleave onmouseover
onbeforecut ondragover onmousewheel
onbeforedeactivate ondrop onmove
onbeforeeditfocus onerrorupdate onmoveend
onbeforepaste onfilterchange onmovestart
onbeforeupdate onfocus onpaste
onblur onfocusin onprerender
onclick onfocusout onpropertychange
Events for the
oncontextmenu onhelp onreadystatechange
Submit button.
oncontrolselect oninit onresize
oncopy onkeydown onresizeend
Check back oncut onkeyup onresizestart
tomorrow, there ondatabinding onload onselectstart
might be more. ondblclick onlosecapture onserverclick
ondeactivate onmousedown onunload
ondisposed onmouseenter
Introduction to MIS
Sample Javascript Web Event
<script language="javascript">
function ShowMessage(msg)
{
alert(msg);
}
</script>
SampleJavaScript.html
Introduction to MIS 1
Encapsulation Object-Oriented Programming
Object Hierarchies
Inheritance Object name: Account
Number Beginning Balance
Polymorphism Name Ending Balance
Object attributes/properties: Client Current Balance
Manager Interest Rate
Date Opened
Savings
Interest Rate Checking
Monthly Fees
Lowest Balance in Month
Pay Interest Bad Check Charges
Compute Charges Authorized Signature
Print Quarterly Statement
Print Monthly Statement
Send Bad Check Notice
Budget Saver Pay Interest
Money Market
Volume
Fixed Fee
Senior Citizen CD
Student
Introduction to MIS 1
Top-down and Bottom-up
Identify Standards!
Management Integrate
Functions and Write code
Management
Operations Build DB
Entire Organization Find a problem
Design Systems Functions Functions
Data
Programs
Operations Operations Operations
Programs Programs
Programs Programs
Introduction to MIS 1
Runaway Projects
Technical measures
2 - 5 times over budget $
2 - 5 times behind schedule
Missing technical objectives
Design problems
Duplication of efforts 2010 2012
Incompatibilities 2008
User/designer conflicts 2013
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Introduction to MIS 1
Common Problems
Confusion over who is working on each part.
Program portions do not work together.
Users have minimal and conflicting input.
Programmers and developers leave.
Work is duplicated or discarded.
Goals are uncertain or changing.
Introduction to MIS 1
Success & Failure
Reasons for Success Reasons for Failure
User Involvement Lack of user input
Executive management Incomplete requirements
support Changing requirements and
Clear requirements specifications
Proper planning Lack of executive support
Realistic expectations Lack of technical skills
Cafasso 1994
Introduction to MIS 1
Systems Development Life Cycle
Feasibility & Goals & plans
Planning
Systems
Proposal Design Technical Design
Systems
Problems & Implementation
Improvements
New System
Introduction to MIS 1
Development Controls
Detailed work plan
Performance targets
Practices & procedures
User input & control Blue Print/Planning
Introduction to MIS 1
Comparison of Diagrams
Data Flow Diagram Entity Relationship Diagram
Show process and flow of Describe
data. Data structures.
Process Yes
No By entities or object
Increasingly detailed levels inheritance.
of process.
Structure Chart or VTOC
Show modules and usage
flow.
Module structure
No
By program structure or
usage steps.
Introduction to MIS 1
Systems Implementation
Final testing
Involve users
Education and training
Flexibility
Recognize how the system
will affect the business
Education and training
Encourage users to change
Implementation plans
Changing
Business operations
Introduction to MIS 1
Implementation Options
old old
Parallel
new
store 1 new
Pilot store 2 new
store 3 new
store 4 new
old new
dept or component 1
dept or component 2
Phased dept or component 3
dept or component 4
Introduction to MIS 2
System Evaluation
Feasibility Comparison
Cost and Budget Compare actual costs to budget estimates.
Time Estimates Was project completed on time?
Revenue Effects Does system produce additional revenue?
Maintenance Costs How much money and time are spent on changes?
Project Goals Does system meet the initial goals of the project?
Introduction to MIS 2
SDLC Advantages & Disadvantages
Advantages Disadvantages
Control & targets Increased costs
Formality Increased time
Financial controls Hard for DSS
User input Requires definitions up front
Documentation Rigid
Testing
Ease of maintenance
Introduction to MIS 2
Capability Maturity Model
http://www.sei.cmu.edu/cmmi/
Introduction to MIS 2
Prototyping
MIS Designer User
Initial Interview
Request changes
Modify Prototype
1) User is satisfied
2) User and designer give up
Process repeats until: 3) Formal system is built from prototype
4) Need for application is removed
5) Process never ends
Introduction to MIS 2
Prototyping Evaluation
Advantages Best uses
Get a working system earlier Single user
User has more input Reports
Designed to be modified Input screens
Self-contained applications
Problems
Need 4GL trained MIS staff
Too many users
Too many analysts
Never finish
"Loss" of management
control
Introduction to MIS 2
Extreme Programming and Agile Development
Release 1.0 Release 1.1
time
Introduction to MIS 2
Developing Systems with Teams
Introduction to MIS 2
Get everyone together to
Joint Application Design
identify the primary
elements of the design with
no distractions.
Goals
Primary Needs
Computations
Forms
Database
Introduction to MIS 2
Teamwork Development
Coordination
Technology
Information Change
Control Sharing Monitoring
Introduction to MIS 2
End-user Development
Advantages
Faster
Cheaper
Get what you want
Disadvantages/Problems
Lack of documentation
Individual/personal differences
Pre-packaged software limitations
Takes User time
Introduction to MIS 3
End-user Development
When to Call for Help
Many people use the system Need to integrate
PC versus central computer Use corporate data
Need documentation Tie to existing software
Individual user differences Connect to network
Need to train users Database Integrity
Commercial software limits Avoid duplicate data
User time is expensive Changes to corporate data
Mission critical application
Additional testing
Many modifications
Need security & control
Introduction to MIS 3
Who Should Develop Systems?
MIS End User
Size: Many users One-time code
Complexity: Different Can purchase pre-packaged
departments solutions
Long development time Highly trained users
SDLC large project controls
Cost of user time How Can MIS Help?
Critical Information Easy access to
Major changes to central
data/database
data base
Formal testing
Advice and help
Expensive hardware
Testing & quality control
Formal feasibility Training & tutorials
Compatibility Support/Help Center
Specialized knowledge
Introduction to MIS 3
Choosing Methodologies
SDLC RAD Extreme JAD Prototyping End User
Programming
Control Formal MIS Time Joint User User
Time frame Long Short Short Medium Short Short
Users Many Few Few Few One or two One
MIS staff Many Few Many Few One or two None
Trans/DSS Trans. Both Both/DSS DSS DSS DSS
Interface minimal Minimal Good Crucial Crucial Crucial
Document. & Good Limited Variable Limited Weak None
Training
Integrity & Vital Vital Unknown Limited Weak Weak
Security
Re-usability Limited Some Maybe Limited Weak None
Introduction to MIS 3
A Systems Approach to Process Analysis
Systems
Input, Process, Output
Divide and Conquer
Goals and Objectives
Control and Feedback
Basic Systems
Diagramming Systems
Common Systems Problems
Input Process Output
Introduction to MIS 3
System boundary: The Zoo
Requests
Members Suppliers
& Comments
Donors Money Animal Feed
Visitors
Invoices
Education Baby
Visitor Counts Animals
Registration Other Zoos
Educational Papers
Materials
Introduction to MIS 3
Subsystems: The Zoo
Donor &
Public
Relations
Animal
Care
Manage
Human
Resources
Produce
Management Manage
Reports Facilities
Introduction to MIS 3
Goals and Feedback
Control
Feedback
Analyze
Introduction to MIS 3
Data Flow Diagram Objects
External Entity
Process
Data Flow
Introduction to MIS 3
zoo booster The Zoo: Level 0
members
public/
zoo visitors donors
Introduction to MIS 3
public/
zoo visitors The Zoo: Level 1
money & zoo booster
comments donors
receipts newsletter members
PR data money & notices, etc.
receipts requests money &
1.1 etc. 1.2 1.3 suggestions
produce PR handle org. booster
& outreach donor services &
programs requests meetings
donor booster
needs &
money, data, donor requests requests
plans
visitor statistics lists public requests
needs & 1.4
plans track needs
1.5 and donor
produce programs
accounting expenses & budget needs & budgets
& reports animal public requests
accounting needs
reports adopt an animal
files
Introduction to MIS 4
Systems: Data Dictionary
Processes
Animal Care Description
Donor & Public Relations ...
Employee Relations ...
Entities
Certification Agencies ...
Donors ...
Data
Accounting Reports ...
Certification Reports ...
Introduction to MIS 4
Data Dictionary
Introduction to MIS 4
System Problems
Do not include
warranty registration data flows
between external
Manufacturer Customer entities. Drop
orders the line or make
purchase orders
one of the
entities internal.
Invoices Sell Products sales receipt
A process
A process cannot be a
cannot invent black hole--data
data. It must must flow out of
have a data flow the process.
coming in to it. Store reports
weekly report Maybe it should
Save Reports be a file instead.
Modify Reports
daily sales Inventory list
Introduction to MIS 4
Zoo system boundary Boundaries
Visitors
Distribute
Educational
Materials
Create
Educational
Materials
Problem Boundary
Introduction to MIS 4
Common Systems Problems
Defective subsystems
Receive
Wrong Data Orders
Errors in Data
Missing feedback and
control Check
Customer
Not responding to Credit
environment
Check
Orders
for Errors
Introduction to MIS 4
zoo booster
donors members Identifying
money &
PR data
receipts
money &
suggestions newsletter,
notices,
Cause
etc.
requests
1.3
etc. & Effect
1.2 Booster
Handle services &
donor meetings
requests needs & booster requests
needs & plans
public requests
plans
Introduction to MIS 4
Object Orientation
◆ Object Orientation
● Properties
● Methods
● Inheritance
● Polymorphism
◆ Business Objects and Processes
Introduction to MIS 4
SDLC v. Object Oriented
60
50
40 SDLC
% time
Object Oriented
30
20
10
0
Requirements Analysis Design Implementation
Introduction to MIS 4
Objects & Events
Installation
& Maintenance
Introduction to MIS 4
Rolling Thunder Order Entry Process
Ne BikeSizes
w
or es
de z
Order Entry r si
Bicycle t.
Clerk Es
Re
tail
d ata
Retail Store Select BikeTubes
er
m
u sto ices
C ho Se
C lec
t
Introduction to MIS 5
Rolling Thunder Manufacturing Process
Frame
Assembler Painter
int
Build
BikeTubes TubeMaterial
Pa
QOH
l
al
st
Bicycle
In
Customer
BikeParts Components
QOH
ll
Insta
ip
Sh
Customer
Transaction Installer
Introduction to MIS 5
Rolling Thunder Purchasing Process
Purchase Purchase
Order Order Items QOH Components
Purchase
Employee
ble
a ya
Receive
P
Manufacturer
Transaction
Introduction to MIS 5
Some Classes for Rolling Thunder
Customer Customer
Bicycle BikeTubes
Customer
1 1 * SerialNumber
CustomerID * SerialNumber
Phone CustomerID TubeName
ModelType 1 TubeID
FirstName
LastName PaintID Length Components
Address FrameSize 1 ComponentID
ZIPCode OrderDate BikeParts
ManufacturerID
CityID StartDate SerialNumber * * ProductNumber
BalanceDue ShipDate * ComponentID Road
ShipEmployee SubstituteID Category
FrameAssembler Location Length
Painter Quantity Height
Construction … Width
WaterBottle…
Manufacturer Weight
CustomName
Description
LetterStyleID ManufacturerID
ListPrice
StoreID ManufacturerName 1
EstimatedCost
EmployeeID ContactName
QuantityOnHand
… Phone
…
Introduction to MIS 5
Rolling Thunder Bicycle Class Diagram
Introduction to MIS 5
Rolling Thunder Bicycle Class Diagram
Groupo
Customer Bicycle BicycleTube BikeTubes TubeMaterial
CompGroup
CustomerID SerialNumber SerialNumber
ModelType SerialNumber GroupName TubeID
Phone CustomerID TubeID BikeType
TubeName Material
FirstName ModelType Quantity Year
ModelType TubeID Description
LastName PaintID EndYear
Address Description Length Diameter
FrameSize Weight
ZIPCode OrderDate ComponentID Thickness
CityID StartDate Roundness
ModelSize
BalanceDue ShipDate Weight
ShipEmployee Stiffness
ModelType ListPrice
FrameAssembler Paint MSize BikeParts
Painter Component Construction
TopTube
Construction PaintID SerialNumber
ChainStay
WaterBottle ColorName ComponentID ComponentID
TotalLength
CustomerTrans CustomName SubstituteID ManufacturerID GroupCompon
ColorStyle GroundClearance
LetterStyleID Location ProductNumber
ColorList HeadTubeAngle
CustomerID StoreID DateIntroduced Quantity Road GroupID
SeatTubeAngle
TransDate EmployeeID DateDiscontinued DateInstalled Category ComponentID
EmployeeID TopTube EmployeeID Length
Amount ChainStay Height
Description HeadTubeAngle Width
Reference SeatTubeAngle LetterStyle Weight
ListPrice Year
Employee
SalePrice LetterStyle PurchaseItem EndYear ComponentName
SalesTax Description Description
EmployeeID ListPrice
SaleState PurchaseID ComponentName
TaxpayerID
ShipPrice ComponentID EstimatedCost AssemblyOrder
LastName
FramePrice PricePaid QuantityOnHand Description
FirstName
ComponentList Quantity
HomePhone PurchaseOrder
QuantityReceived
Address
ZIPCode PurchaseID
RetailStore CityID EmployeeID
DateHired ManufacturerID
DateReleased ManufacturerTrans
StoreID TotalList Manufacturer
StoreName CurrentManager ShippingCost
Phone City SalaryGrade Discount ManufacturerID
ManufacturerID
ContactFirstName Salary OrderDate TransactionDate
ManufacturerName
ContactLastName CityID Title ReceiveDate EmployeeID
ContactName
Address ZipCode WorkArea AmountDue Amount
Phone
ZIPCode City Description
Address
State Reference
CityID ZIPCode
AreaCode
Population1990 CityID
Population1980 BalanceDue
StateTaxRate Country
Latitude
Longitude
State
TaxRate
Introduction to MIS 5
Simple Object Access Protocol
Your Company Server
€40,000
€30,000 Revenue
€20,000 Cost
Introduction to MIS 5
Technology Toolbox: InfoPath
Introduction to MIS 5
Quick Quiz
Introduction to MIS 5
BlackScholesVB.xls
Introduction to MIS 6
Cases: Government Agencies
Annual Budget
18
16
14
12
NASA
Billion $
10
FAA
8
IRS
6
0
1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006
Introduction to MIS 6