Title: CHAPTER 14 INFORMATION SYSTEMS DEVELOPMENT
1CHAPTER 14INFORMATION SYSTEMS DEVELOPMENT
2Initiation System Development
- Problems with existing systems
- Desire to exploit new opportunity
- Increase competition
- Organizational growth
- Changes in the market or external environment
- Changes in organizational structure
- New laws and regulations
3Information Systems Planning
IS Planning Process
4Information System Strategic Plan
- Reflects the mission of IS department
- Must correspond to the organizations strategic
plan - Must provide efficient information architecture
for long term - Allocates information technology resources in
optimal way
5Four-Stage Model of IS Planning
- Strategic IS planning
- Information requirements analysis
- Resources allocation analysis
- Project planning
6Strategic Planning
7Organization Requirements Analysis
- Assessment
- Information architecture
- Current information needs
- Projected information needs
- Assemble master development plan
- IS project definition
- Project ranking
- Development schedule
8Resources Allocation Planning
- Trend identification
- Hardware plan
- Software plan
- Communications networks plan
- Facilities plan
- Financial plan
9Project Planning
- Project evaluation
- Task definition
- Cost estimates
- Time estimates
- Checkpoints
- Completion dates
10Operational Plan
- Mission of the function
- IS environment
- Objectives of the IS function
- Constraints on the IS function
- Long-term systems need
- Short-range plan
11Systems Development Life Cycle (SDLC)
- SDLC structured framework
- Major steps
- Development activities
- After development activities
- Waterfall Approach - no loops back onto previous
steps
12An Eight-Stage Systems Development Life Cycle
(SDLC)
(1) Systems Investigation
(2) Systems Analysis
(3) Systems Design
(4) Programming
(5) Testing
(6) Implementation
(7) Operation
(8) Maintenance
Go Back to a previous Stage or Stop
13Systems Investigation (Step 1)
- Determine the exact problem
- Feasibility Study
- technical feasibility
- economic feasibility
- Time value of money
- Net present value
- Return on investment
- Breakeven point
- behavioral feasibility
14Systems Analysis (Step 2)
- Assembling the participants for system analysis
- Collecting appropriate data and requirements
- Analyzing the data and requirements
- Formulation new system requirements and project
priorities
15Data Analysis
- Data modeling
- ERD
- Activity modeling
- Data flow diagram
- Data flow lines
- Process symbols
- Entity symbols
- Data storage
- Application flow chart
16Entity-Relationship Diagram
17Data Flow Diagram
Schedule Data
Schedule course
Academic department
Offered Courses
18Systems Design (Step 3)
- System outputs, inputs, and user interfaces
- Hardware, telecommunications, and procedures
- Software, databases
- Personnel
- How these components are integrated
- Two-step process
- Logical systems design what the system will do
- Physical systems design how the system
components are accomplished
19Programming (Step 4)
- The translation of the design specifications into
computer code - Select programming language
- Structured programming
- Entire program consists of a number of modules
- Each module implements one particular task
- Each module has exactly one input and one output
- GO TO statement is not allowed
20Structured programming techniques
- Sequence structure
- If-then-else structure
- Loop structure
- Procedure
21Testing (step 5)
- Debugging
- Eliminating of syntax errors
- Eliminating logical errors
- Tests planning
- All branches in the code must be tested
22Implementation (Step 6)
- Parallel conversion
- Direct conversion
- Pilot conversion
- Phased conversion
23Operation and Maintenance
- Operation (Step 7)
- Maintenance (Step 8)
- debugging the program
- updating the system to accommodate changes in
business conditions - add new functionality to the system
24Alternatives to Conventional SDLC
- Prototyping
- Joint application development
- Rapid application development
- Object-oriented development
- End-user application development
25Prototyping
- Prototyping obtain only a general idea of user
requirements - Advantages
- speeds up the development approach
- gives the users the opportunity to clarify their
information requirements - useful in the development of decision support
systems and executive information systems - Disadvantages
- replaces the systematic analysis and design
stages of the SDLC - quality may be sacrificed - can result in an excess of iterations
26Joint Application Design (JAD)
- JAD is a group-based method for collecting user
requirements and creating system designs - Advantages
- saves time
- greater support for, and acceptance of new
systems - produces higher quality systems
- easier implementation
- lower training costs
- Disadvantages
- very difficult to get all users to JAD meetings
- all the problems that may be caused by any group
process
27Rapid Application Development (RAD)
- Combine JAD, prototyping, iterative development,
and integrated CASE tools, to rapidly produce a
high-quality system - Spiral development
- Each iteration contains a combination of SDLC
steps - Each iteration refines the system
- Each iteration produces a system that can be used
- Features are added according to users priorities,
requirements, function reuse, implementation risk
28Advantages of Spiral Development
- High parallelism
- High user involvement
- Produce better system
- Users satisfaction
- Gradual resources commitment
- Frequent product delivery
29RAD Packages
- GUI development environment
- Libraries of standard objects
- Code generators
- Integrated development environment to create
computer codes
30Integrated Computer-Aided Software Engineering
(ICASE) Tools
- ICASE Tools automate many of the tasks in the
SDLC - Upper CASE
- lower CASE
- integrated CASE
- CASE tools components
- Diagramming tools
- Analysis tools
- Repository tool
- Code generators
31Advantages of RAD
- speeds the development process
- reduces development costs
- can create applications that are easier to
maintain and modify - Disadvantages
- may result in systems with limited functionality
and adaptability for change - Not suitable for sophisticated calculations
32Object-Oriented Development
- OOD considers real-world systems as sets of
interacting entities, which have attributes - An entity is described as an object
- Entitys attributes are described as objects
properties - Methods (or operations) are used to change
objects properties (or data values) - Object class incorporates similar objects
- Each object is considered as an instance of
object class - Objects interact with each other by means of
messages
33End-User Development
- Increasing the power of desktop hardware
- Reducing hardware cost
- Increasing software capability
- Increasing computer-literate population
- Small and ad hoc application
- Advantages
- Users get control over all stages of SDLC
- Save time and money on application development
34Disadvantages of End-User Development
- Applications are simple
- More advanced hardware and software are needed
- Leads to a large number of isolated applications
- Attracts time from main business duties
- Have limited area of application
35External Acquisition of Software
- Outsourcing
- Factors considered during make-or-buy decision
- on-time
- on-budget
- full functionality
- user acceptance
- favorable costs-to-benefits ratio
- low maintenance
- scalability
- integration with other systems
- minimal negative cross-impacts
- reusability