Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Unit 3 - Systems Development 2022

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 100

UNIT 3

ACQUIRING INFORMATION
SYSTEMS AND APPLICATIONS

1
UNIT OUTLINE
1 Planning for and Justifying IT Applications
2 Strategies for Acquiring IT Applications
3 The Traditional Systems Development Life Cycle
4 Alternative Methods and Tools for Systems Development
5 Vendor and Software Selection

2
LEARNING OBJECTIVES
1. Define an IT strategic plan, identify three objectives it must meet, and describe the four common approaches
to cost-benefit analysis.
2. Discuss the four business decisions that companies must make when they acquire new applications.
3. Identify the six processes involved in the systems development life cycle, and explain the primary tasks and
importance of each process.
4. Discuss the relevance and interrelatedness between the six phases in the SDLC.

5. Explain how each phase will be applied in a full-scale development project and the key deliverables.

6. Describe, compare and evaluate the various alternate development methods and tools.
7. Describe four alternative development methods and four tools that augment development methods, and identify at least one
advantage and one disadvantage of each method and tool.
8. Analyze the process of vendor and software selection.

3
DEFINITION OF IS

AN ARRANGEMENT OF INTERDEPENDENT HUMAN & MACHINE


COMPONENTS & PROCEDURES THAT INTERACT TO SUPPORT THE
INFORMATION NEEDS OF A BUSINESS AND ITS USERS

4
INTRODUCTION
A growing no. of corporations have implemented enterprise information systems (ISs)
Eg. ERP systems, mobile systems, CRM and other systems
System serve the entire organisation or many of its units/departments
Investment of resources into such systems (financial and otherwise) is enormous – also risky
(the process may fail)

5
INTRODUCTION
Successful implementation = competitive advantage for the company (better customer
relationship, improved products & services, etc)
Important for organisations to plan to PLAN implementation of ISs
ISs can be implemented in various ways:
◦ In-house
◦ Made to order by another company
◦ Purchased/adapted for the organisation

6
INTRODUCTION
When planning – important to align IT strategies with overall strategies for the organisation
(taught in 2nd year – end of Ch2)
The role of the user (YOU) is of utmost importance
You will be closely involved in all aspects of acquiring ISs and applications for your organisation
As a user, you may:
◦ Provide IS professionals with proper requirements & feedback
◦ Your knowledge and input will be required regularly, especially when discarding one IS for another

7
INTRODUCTION
Many opportunities and pitfalls associated with systems development
◦ Human relations side plays a big role
◦ People are an extremely important component of any IS
◦ Many people from different disciplines are involved in SD
◦ Project management & communication skills are integral

Managers from different areas may have different (and often hidden) agendas for the new
system
Hidden agendas may not become clear and known until it is too late
Activity- Provide examples of the types of hidden agendas managers may have.
Companies struggle to bring order to the process

8
INTRODUCTION
Sometimes companies allow users to develop their own applications
Problematic – leads to islands of information & private databases
Important for these databases to be integrated into a well-designed, enterprise-wide
information strategy

9
INTRODUCTION
Why would companies embark on systems development:
◦ When they are losing competitive advantage
◦ Inefficient business processes
◦ No IS at all

Top management frequently initiates change & fully support systems development efforts
Sometimes project managers take inappropriate short cuts

10
INTRODUCTION
Important for top management to emphasise that the project plan is the blueprint for successful
development
Sound technical judgement is required
Also sound human relations & communications techniques

Activities – Provide some examples of poor or inefficient business processes that you’ve been
subjected to.
Why do you think some IT projects fail?

11
WHY DEVELOPMENT EFFORTS
FAIL
Being over budget, being delayed, missing functions, or a combination of all three
New systems does not meet users’ needs
Acquisition of insufficient hardware or too much hardware
Software may be inadequately tested and not perform as expected

12
IMPORTANT SUCCESS FACTORS
Important success factors:
◦ Choose the development process appropriate to the project at hand
◦ Establish the requirements of the system

Critical steps in the beginning stages of systems development


Reason: decisions made will outline the path to be taken for the entire project
Critical for requirements to be established at the beginning of the project
Requirements = purpose of creating the system to begin with
Imperative that requirements are established correctly

13
The traditional SDLC

14
The Traditional SDLC

15
13.1 Planning for and Justifying IT Applications
Organizations must analyze the need for the IT application.
Each IT application must be justified in terms of costs and benefits.
Companies need to examine its needs & performance
Then generate a prioritized list of both existing & potential IT applications
Called the application portfolio
Applications to be added, or modified if they already exist

16
13.1 Planning for and Justifying IT Applications
IT PLANNING
Begins with an analysis of the organizational strategic plan (See figure 13.1)
Strategic plan identifies the firm’s overall mission & broad steps required to reach its goals
Organisational strategic plan and existing IT architecture provide the inputs in developing the IT
strategic plan

17
Information Systems Planning

18
13.1 Planning for and Justifying IT Applications
IT strategic plan – a set of long-range goals
Purpose: describe the IT infrastructure & identify the major IT initiatives required to achieve the
organization’s goals
IT strategic plan must meet three objectives
◦ Must be aligned with the organization’s strategic plan
◦ Must provide for an IT infrastructure that seamlessly networks users, applications & databases

19
Information Systems Planning (continued)
Organizational
IT Architecture
Strategic Plan

IT Strategic Plan

20
13.1 Planning for and Justifying IT Applications
◦ Must efficiently allocate IS development resources among competing projects so the projects can be
completed on time and within budget & still have the required functionality

A critical component in developing & implementing IT strategic plan is the IT STEERING


COMMITTEE

21
13.1 Planning for and Justifying IT Applications
STEERING COMMITTEE
Group of managers and staff representing various organizational units
Created to:
◦ Establish IT priorities
◦ Ensure that the MIS function is meeting organizational needs

Major tasks:
◦ To link corporate strategy with IT strategy
◦ Approve allocation of resources for the MIS function
◦ To establish performance measures for the MIS function & ensure they are met

22
IT Steering Committee

© Image Source/Age Fotostock America, Inc.

23
13.1 Planning for and Justifying IT Applications
After IT strategic plan is agreed upon, organization develops the IS operational plan
IS Operational Plan
Contains the following elements:
Mission
IT environment
Objectives of the IT function
Constraints of the IT function
Application portfolio
Resource allocation and project management

24
Evaluating & Justifying IT Investment: Benefits,
Costs & Issues
Assessing the costs
◦ Fixed costs - are those costs that remain the same regardless of change in the activity level. For IT, fixed
costs include infrastructure cost, cost of IT services, and IT management cost
◦ Total cost of ownership (TCO) - Formula for calculating cost of acquiring, operating and controlling an IT
system.

Assessing the benefits (Values)


Intangible benefits: Benefits from IT that may be very desirable but difficult to place an
accurate monetary value on.
Eg. Improved customer or partner relations or improved decision making
Tangible benefits in terms of cost saving for e.g. through staff reduction, saving on paper, etc.
Comparing the two

25
Conducting the Cost-Benefit Analysis
(Read Page 314 of textbook)
Using Net Present Value (NPV)
method converts future values of benefits to their present-value equivalent by
discounting them at the organization’s cost of funds.

Return on investment
measures the effectiveness of management in generating profits with its available
assets.

26
Conducting the Cost-Benefit Analysis
Breakeven analysis
determines the point at which the cumulative dollar value of the benefits from a
project equals the investment made in the project.
The business case approach
A business case is one or more specific applications or projects.
Its major emphasis is the justification for a specific required investment, but it also
provides the bridge between the initial plan and its execution.

27
13.2 Strategies for Acquiring IT Applications

There are a number of factors that will influence the choice of acquisition
method. Three critical ones are time, cost and quality considerations.

28
13.2 Strategies for Acquiring IT Applications
Four fundamental business decisions to make before choosing a strategy:
(1) How much computer code does the company want to write?
(2) How will the company pay for the application?
(3) Where will the application run?
(4) Where will the application originate?

29
13.2 Strategies for Acquiring IT Applications
1)How much computer code does the company want to write?
Use a prewritten application (to write no computer code)
Customize a prewritten application (to write some computer code)
Custom-write an entire application (write all new computer code)
2) How will the company pay for the application?
Pre-written applications or customized prewritten applications - can be bought or leased
Custom applications - Use internal funding

30
13.2 Strategies for Acquiring IT Applications
3) Where will the application run?
On the company’s platform or on someone else’s platform
Company can employ either a software-as-a-service vendor or an application service provider

4) Where will the application originate?


Pre-written applications can be open-source software or can come from a vendor
Companies may choose to:
◦ Customize prewritten open-source applications, or prewritten proprietary applications from vendors
in-house or outsource customization
◦ Write totally custom applications in-house, or outsource this process

31
Strategies for Acquiring IT Applications
Purchase a Prewritten Application
Cost effective & time saving
Companies to ensure that selected package contains all the necessary features
for current and future needs

Customize a Prewritten Application


An attractive option if a vendor allows the company to modify the application
to meet its needs
Not the best strategy when the software is either very expensive or likely to
become obsolete in a short time

32
Strategies for Acquiring IT Applications
Lease the applications
Interested companies apply the 80/20 rule
If the software meets 80% of its needs, then consider modifying its business processes so it
can use the remaining 20%
Sometimes a better long term solution than modifying vendor software
Especially attractive for small- to medium-size enterprises that cannot afford major
investments in IT software

33
Strategies for Acquiring IT Applications
CLOUD COMPUTING

A computing environment in which software and storage are provided as an Internet service
Accessed by users through their web browser
E.g. Google, Yahoo store email of many users (plus calendars, contacts, to-do-lists) on their servers
No need to store data on your own desktops – can be accessed from any device
Apple – iCloud – store documents, music, photos, apps
Facebook – store personal photos in the clous
Flickr – store photos
Pandora – delivers music
Hulu & YouTube – deliver movies via the cloud

34
Strategies for Acquiring IT Applications
CLOUD COMPUTING: ADVANTAGES

 Organisations avoid large up-front investments in hardware


 No ongoing investment in the resources that would be required to manage the hardware
 Cloud computing service provider provides access to state-of-the-art technology at a fraction of
the cost of owning out
 Increase speed and reduce costs of new product and service launches
 Can be deployed in different ways [Public & Private Cloud computing]

35
Strategies for Acquiring IT Applications
PUBLIC CLOUD COMPUTING
◦ Service provider organisation owns and manages the infrastructure (computing, networking & storage
devices)
◦ Cloud user organisations (called tenants) access slices of shared hardware resources via the Internet
◦ Great advantage/solution to organisations whose computing needs vary depending on changes in demand
SERVICE PROVIDERS
◦ Amazon
◦ Cisco Systems
◦ IBM
◦ Microsoft
◦ Verizon Communications Inc

36
Strategies for Acquiring IT Applications
PUBLIC CLOUD COMPUTING
◦ Users pay a monthly or annual subscription
◦ May also provide training, support & data integration services
◦ Faster, cheaper and more agile approach to building & managing your own infrastructure
DISADVANTAGES
◦ Cloud users use someone else’s data center
◦ Potential issues with service levels, loss of control, disaster recovery & data
security

37
Strategies for Acquiring IT Applications
Cloud Computing divided into 3 main types of service:
1. Infrastructure as a service (IaaS)
An IS strategy whereby an organization outsources the equipment used to
support its data processing operations, including servers, storage devices
and networking components.
The provider owns the equipment and is responsible for housing, running
and maintaining it. The outsourcing organisation may pay on a per-use or
monthly basis.
 
38
Strategies for Acquiring IT Applications
 

2. Software as a service (SaaS)


A software delivery approach that provides users with access to software remotely as a web-based service. Users pay
a monthly fee – this results in lower costs as opposed to a licensed application. Another advantage is that, since
software is hosted remotely, users to not need to purchase and install additional hardware to provide increased
capacity.
A simple example of SaaS is an online email service, like Gmail. If you use Gmail, you are not hosting your own email
Other SaaS examples: Google Apps,, Dropbox
 
3. Platform as a service (PaaS)
Users are provided with a computing platform, which typically include the operating system, programming language
execution environment, database services and a web server. Users can create an application or service using tools
and/or libraries from the provider.
The PaaS provider provides the networks, servers, storage and other services which are required to host the
consumer’s application.

39
Strategies for Acquiring IT Applications
PRIVATE CLOUD COMPUTING
Private cloud environment is a single tenant cloud
Reason for implementation: organizations are concerned that
their data will not be secure in a public cloud
TWO DISTINCT TYPES
 Some organisations build their own on-premises private cloud
 Others choose to have a service provider build & manage their
private cloud (virtual private cloud)
40
Strategies for Acquiring IT Applications
PRIVATE CLOUD COMPUTING
Very costly –
Organisations may establish several private clouds
 Finance
 Product development
 Sales

Each private cloud has a defined set of available resources and users
Each has predefined quotas that limit how much capacity users of that cloud
can consume

41
Operation of an
Application Service Provider (ASP)
Customer Customer Customer
A B C

Application Application Application

Database Database Database

ASP Data Center


42
Operation of a
Software-as-a-Service (SaaS) Vendor
Customer Customer Customer
A B C

Application

Customer Customer Customer


A B C

SaaS Vendor Data Center 43


Strategies for Acquiring IT Applications
Use Open-Source Software
Companies obtain a licence to implement an open-source software product
Either use it as is, customize it, or develop applications with it.
Same as proprietary application, except for licensing, payment & support

44
Strategies for Acquiring IT Applications
Outsourcing
Acquiring IT applications from external contractors or organizations. System is managed by an outside
company.
Eg. If companies want to experiment with new IT technologies without making a substantial up-front
investment
Gain outside experts
Disadvantage: companies place their valuable corporate data under the control of the outsourcing
vendor.

45
Strategies for Acquiring IT Applications

Custom Development
Companies decide to custom-build an application
Either in-house or outsourced
More time-consuming & costly than buying or leasing
Produces a better fit with the organization’s specific requirements

46
Strategies for Acquiring IT Applications

Custom Development
Starts with IT steering committee receiving suggestions for a new system
Suggestions come from users
Basic, backbone methodology for custom development is the SDLC

CASE STUDY - Intro to Information Systems 7th Edn, Rainer and Prince, 2018 - Chapter 13 Pg 369 –
Peoples State Bank Transforms its Technology (Will be available on Blackboard)

CASE STUDY 7.3 – Pg 286 - Refer to Ebook – Business Information Systems, 5th Edition by Paul
Bocij

47
13.3 Traditional Systems Development Life Cycle

Software Development Life Cycle (SDLC)


The traditional systems development (SD) method that organizations use for large-
scale IT projects
A structured framework
Consists of sequential processes whereby IS are developed
Six clearly defined tasks

48
13.3 Traditional Systems Development Life Cycle
Software Development Life Cycle (SDLC)
Systems Investigation
Systems Analysis
Systems Design
Programming and Testing
Implementation
Operation and Maintenance

[See figure 13.4 – p321] – Introduction to Information Systems 5th


Edition – Rainer, Prince and Cegielski
49
13.3 Traditional Systems Development Life Cycle
Software Development Life Cycle (SDLC)
Development teams typically include:
◦ Users
◦ Systems analysts
◦ Programmers
◦ Technical specialists

Users are employees from all functional areas & levels in the organization who
interact with the system (directly or indirectly)
Systems analysts are IS professionals who specialize in analyzing & designing ISs

50
13.3 Traditional Systems Development Life Cycle

Software Development Life Cycle (SDLC)


Programmers are IS professionals who either modify existing computer programs or
write new programs to satisfy user requirements
Technical specialists are experts on a certain type of technology (databases,
telecommunications)
Systems stakeholders include everyone affected by changes in a company’s IS

51
Six-Stage Systems Development Life Cycle (SDLC)
with Supporting Tools
Business
Need Prototyping

Systems Systems Systems


Investigation Analysis Design
Programming Implement Operation and
and Testing The Maintenance
Deliverable: Deliverable: Deliverable: System
Go/No Go User Technical
Decision Requirement Specification

Upper CASE Joint Application Lower CASE


Tools Design (JAD) Tools
52
The SDLC
Major advantages
Control – organisation keeps close control with regard to each phase of the project due to
detailed upfront planning
Accountability – roles and responsibilities are clearly defined and key role players are held
accountable
Error detection – sufficient time is given to each phase of the project making provision for
errors to be detected and fixed.
Major drawbacks
Relatively inflexible
Time-consuming and expensive
Discourages changes once user requirements are gathered

53
SDLC – Systems Investigation
Begins with the business problem (or opportunity) followed by the feasibility
analysis.
The feasibility study is the main task of the Systems Investigation phase.
The feasibility study helps the organization choose between 3 options:
1) Do nothing and continue to use the existing system unchanged.
(2) Modify or enhance the existing system.
(3) Develop a new system.

54
Feasibility Study
Organizational/operational feasibility
Will the system meet the organisation’s needs and help improve performance in terms of the
desired objectives.

Behavioral feasibility
Assessment of the human issues involved in a proposed project, including resistance to change and
skills and training needs.

55
Feasibility Study
Technical feasibility
Assessment of whether hardware, software and communications components can be developed
and /or acquired to solve a business problem.
Economic feasibility
Assessment of whether a project is an acceptable financial risk and if the organization can afford
the expense and time needed to complete it. Also includes the cost benefits analysis.

56
Economic Feasibility

57
Feasibility Study

58
Feasibility Study
After the feasibility study is completed
◦ A “go/no-go” decision is reached by the steering committee

A “go/no-go” does not solely depend on the feasibility analysis


Often organisations have more feasible projects than they can fund
Important to prioritize feasible projects and pursue those with the highest priority
If the decision is a “no-go”, the project is put on hold or discarded
If the decision is a “go”, the project proceeds – systems analysis phase begins

59
SDLC – System Analysis
The examination of the business problem that the organization plans to solve
with an information system.
Main purpose is to gather information about existing system to determine
requirements for the new or improved system.
Deliverable (end result) is a set of system requirements
Difficult to identify specific requirements that the system must satisfy
Called user requirements, provided by users
Once user requirements have been acquired – design phase begins

60
SDLC – System Analysis

61
SDLC – System Analysis

There are three main aspects that need to be documented, usually


from a user perspective:

■ Functional requirements – consist of requirements that perform the


activities that run the business. Examples include updating master
files, enquiring against data on file, producing reports and
communicating with other systems.

■ Non-functional requirements – define the performance levels of the


business functions to be supported. Examples include online response
times, turn-round time for batch processing, security, backup and
recovery.

62
SDLC – System Analysis

■ Quantification of requirements – refers to the need for a measure of


quality if the benefits are to be properly evaluated. Examples might
include reducing customer complaints by 75 per cent, reducing the value
of unsold stock by 85%, or increasing online sales by 25 per cent.

63
SDLC – Systems Design
Describes how the system will accomplish this task.
Deliverable is the technical design that specifies:
◦ System outputs, inputs, user interfaces.
◦ Hardware, software, databases, telecommunications, personnel & procedures.
◦ Blueprint of how these components are integrated.

64
SDLC – Systems Design
When system specifications are approved by all participants, they are “frozen”
Meaning: they should not be changed
Scope creep is caused by adding functions after the project has been initiated.
Endangers the project’s budget & schedule
Controls placed on changes requested by users
Helps to prevent runaway projects

65
SDLC – Systems Design
-Process modelling, which forms part of system design, is the design of the
different modules of the system, each of which is a process with clearly defined
inputs and outputs and a transformation process. (Note that this term is also
used as an approach to design in business process re-engineering.) Dataflow
diagrams are often used to define system processes.
-Data modelling, which also forms part of the system design, considers how to
represent data objects within a system, both logically and physically. The entity
relationship diagram is used to model the data and a data dictionary is used to
store details about the characteristics of the data, which is sometimes referred
to as ‘metadata’.

66
SDLC – Systems Design

67
SDLC – Programming & Testing
If the organization decides to construct software in-house, programming begins.
Programming involves the translation of a system’s design specification into
computer code.
Can be lengthy & time-consuming
Large-scale systems development projects can involve 100s of computer
programmers to create 1000s of lines of computer code
Employ programming teams – often include functional area users to help
programmers focus on the business problem

68
SDLC – Programming & Testing
Thorough & continuous testing occurs throughout the programming stage
Testing checks to see if the computer code will produce the expected and desired
results under certain conditions.
Testing is designed to delete errors (bugs) in the computer code.

69
SDLC – Systems Implementation
Implementation (or deployment) is the process of converting from an old computer system
to a new one
Conversion process involves organizational change.
Only end-users can manage organizational change, not MIS dept
Implementation involves three major conversion strategies:
Direct Conversion
Pilot Conversion
Phased Conversion
Parallel Conversion (not used much today)

70
SDLC – Systems Implementation
Implementation involves three major conversion strategies
Direct Conversion
Implementation process in which the old system is cut-off and the new system turned on
at a certain point in time.
Pilot Conversion
Implementation process that introduces the new system in one part of the organization on
a trial basis, when new system is working property, it is introduced in other parts of the
organization.

71
SDLC – Systems Implementation
Phased Conversion
Implementation process that introduces components of the new system in stages, until
the entire new system is operational.

Parallel Conversion (not used much today)


Implementation process in which the old system and the new system operate
simultaneously for a period of time. Rarely used today if at all.

72
SLDC – Operation & Maintenance
After the system is implemented, it will operate for a period of time until it no longer meets its
objectives
Audits are performed to assess the system’s capabilities and to determine if it is being used
correctly.
Systems need several types of maintenance.
Debugging: A process that continues throughout the life of the system.
◦ Updating: Updating the system to accommodate changes in business conditions. (Eg. New
governmental regulations, eg. changes in tax rates)
◦ Maintenance: That adds new functionally to the system –adding new features to the existing
system without disturbing its operation.

73
13.4 Alternative Methods and Tools
for Systems Development
Methodologies and Tools that complement the SDLC
◦ PROTOTYPING, JOINT APPLICATIONS DEVELOPMENT, INTEGRATED COMPUTER-ASSISTED SYSTEMS
DEVELOPMENT TOOLS, & RAPID APPLICATIONS DEVELOPMENT

Other methodologies:
◦ AGILE DEVELOPMENT, END-USER DEVELOPMENT, COMPONENT-BASED DEVELOPMENT, & OBJECT-
ORIENTED DEVELOPMENT

74
13.4 Alternative Methods and Tools
for Systems Development
METHODS
Joint application design (JAD)
A group –based tool for collecting user requirements and creating system
designs
Often used within systems analysis and systems design stages of SDLC
Involves a group meeting attended by analysts and all users
Manually or via computer
All users jointly define and agree on systems requirements
See Table 13.2 (advantages & disadvantages)

75
13.4 Alternative Methods and Tools
for Systems Development

METHODS
Rapid application development (RAD)
Combines JAD, prototyping and integrated computer-assisted software engineering (ICASE)
tools to produce a high-quality system.
First developers use JAD sessions to collect system requirements
Ensures that users are intensively involved early on
Development process in RAD is iterative

76
13.4 Alternative Methods and Tools
for Systems Development
Rapid application development (RAD)
Requirements, designs and system itself are developed, and then undergo a series of
improvements
RAD uses ICASE tools to quickly structure requirements and develop prototypes
As prototypes are developed and refined, users review them in additional JAD sessions
RAD produces functional components of a final system, rather than prototypes

77
RAD versus SDLC

78
Tools for Systems Development
Prototyping
Approach that defines an initial list of user requirements, builds a prototype system and
then improves the system in several iterations based on users’ feedback.
Developers do not obtain a full set of user specifications all at once
Instead, they quickly develop a smaller version of the system – known as a PROTOTYPE
Two forms:
◦ Can contain only the components of the new system that are of most interest to the users
◦ It can be a small-scale working model of the entire system

Users make suggestions for improving the prototype, based on their experiences with it
Developers then review the prototype with the users and use their suggestions to refine the
prototype

79
Tools for Systems Development
Prototyping
Process continues through several iterations either:
◦ Until users approve the system, or
◦ It becomes clear that the system cannot meet the users’ needs.

If the system is viable, developers can use the prototype to build the full system
Screens can be developed that user will see and interact with
[Refer table 13.2 – advantages & disadvantages]

80
Tools for Systems Development
Integrated computer-assisted software engineering (ICASE)
Computer-Assisted Software Engineering (CASE) is a
development approach that uses specialized tools to automate
many of the tasks in the SDLC; upper CASE tools in SDLC
automate the early stages of the SDLC, and lower case tools
automate the later stages.
Integrated Computer-Assisted Software Engineering (ICASE)
Tools .
CASE tools that provide links between upper CASE
and lower CASE tools.

81
Tools for Systems Development
Integrated computer-assisted software engineering (ICASE)
Computer-Assisted Software Engineering (CASE) is a development
approach that uses specialized tools to automate many of the tasks
in the SDLC; upper CASE tools in SDLC automate the early stages of
the SDLC, and lower case tools automate the later stages.
Integrated Computer-Assisted Software Engineering (ICASE)
Tools .
CASE tools that provide links between upper CASE and lower CASE
tools.

82
Tools for Systems Development
Component-based development
Uses standard components to build applications.

Object-oriented development
Does not begin with the task to be performed, but with aspects of the real world
that must be modeled to perform that task.

83
13.4 Alternative Methods and Tools
for Systems Development
Agile development
Full approach of SDLC or similar waterfall methods, though widely
recognized, are lengthy, expensive & inflexible
Developed system is often unable to adapt to vague or rapidly changing
user needs
To overcome this – alternative methods, collectively called AGILE
METHODS, have emerged
Methods treat software development as a series of contacts with users

84
13.4 Alternative Methods and Tools
for Systems Development
Agile development
Goal:
◦ fast development of software to satisfy user requirements
◦ Then improving the software shortly after users request modifications

Makes extensive use of iterative programming


Users are involved and programmers are open to modifications while
development is underway
Examples are: Extreme Programming (XP), Adaptive Software
Development (ASD) and many others.

85
13.4 Alternative Methods and Tools
for Systems Development
Agile development
Can be updated later to introduce additional functions as they become
necessary
Core tenet/rule: to do only what you have to do to be successful right
now.
Advantage: results in fast development of applications so that users
can have them within weeks (instead of months or years)

86
13.4 Alternative Methods and Tools
for Systems Development
Agile development
Agile methods are not without risk
Analysis phase is minimal or sometimes eliminated completely
Reducing or skipping formal analysis increases risk of incompatibilities &
other unforeseen mishaps
Developers spend most of their time on construction
Very little time spent on documentation
Later modifications can be very time consuming, if not impossible

87
13.4 Alternative Methods and Tools
for Systems Development
Agile development
Agile methods aim to have “light but sufficient” development processes
Project teams therefore avoid use of formal project plans, financial
spreadsheets for budgeting, etc.
With SDLC and other waterfall methods, users sign off on their requirements
& wait for the system to be completed
Agile methods encourage users’ involvement throughout the process
Encourage developers to change requirements in response to user input if
needed

88
13.4 Alternative Methods and Tools
for Systems Development
Agile development
Purpose of agile methods
◦ Not to conform to a static contract with users, BUT
◦ To ensure that users receive an application with which they are happy

To avoid costly redesign, developers are encouraged to test each


module as soon as it is complete

89
13.4 Alternative Methods and Tools
for Systems Development
Agile development – EXAMPLE
EXTREME PROGRAMMING (XP)
Includes the following principles:
◦ Produce the initial software within weeks (rather than months)
◦ Receive rapid feedback from users
◦ Invent simple solutions so that there is less to change (necessary changes are
easy to make)
◦ Improve design quality continually so that the next “Story” is less costly to
implement
◦ [Story: a requirement or set of requirements delivered by users]

90
13.4 Alternative Methods and Tools
for Systems Development
Agile development – EXAMPLE
EXTREME PROGRAMMING (XP)
Instead of formal requirements, developers encourage users to give
examples of how they would like to use the application in certain business
situations.
Communication with users is highly informal, and frequent (daily)
Many failures using this type of development, but also success (example
British Airways)

91
13.4 Alternative Methods and Tools
for Systems Development
Agile development
One type of agile development uses the SCRUM APPROACH
During the project users can change their minds about what they want and
need
Scrum acknowledges that a development problem cannot be fully
understood or defined from the start
Scrum therefore focuses on maximizing the development team’s ability to
delivery iterations quickly
Also to respond effectively to additional user requirements as they emerge.

92
13.4 Alternative Methods and Tools
for Systems Development
Agile development
Primary roles of Scrum:
◦ Scum master: maintains the process (typically replaces the project manager
◦ Product Owner: represents the business users and any other stakeholders in the project
◦ Team: cross-functional group of about 7 people who perform the actual analysis, design,
coding, implementation, testing, etc.

[read – page 327]

93
13.4 Alternative Methods and Tools
for Systems Development
When to use Agile Methods
When the system is small
When it deals with unstructured problems
When the users cannot specify all the requirements from the start of the project
When the development team is small & co-located
System requirements are dynamic
Development project budget is tight
Useful when developing a user interface
◦ Developers can save time by quickly developing screens, icons & menus for users to evaluate instead
of forcing the users to provide specifications
When users cannot communicate their requirements, either because they are not familiar with
technology, or because they find it hard to conceptualize the system’s input and output files, etc.

94
13.4 Alternative Methods and Tools
for Systems Development
When NOT to use Agile Methods
If a system is large or complex
If it is designed to interface with other systems
When the team is large or distributed in multiple sites
System requirements are fairly static
System will significantly affect people’s well-being & critical
organizational goals
Development is well-funded

95
13.4 Alternative Methods and Tools
for Systems Development
End-user development
An approach in which the organization’s end users develop their own application with
little or no assistance from the IT department.
See figure 13.2 (advantages & disadvantages)

96
CASE STUDY
CASE STUDY - Intro to Information Systems 7th Edn, Rainer and Prince, 2018 - Chapter 13 Pg 387
– SDLC versus Minimum Viable Product Development (will be placed on BB)

Case study 7.1 Pg 275, Ebook – Business Information Systems , 5 th Edition by Paul Bocij

97
13.5 OUTSOURCING
Vendor & Software Selection
A formal business relationship to transfer internal business processes and functions to a third
party business
Many businesses and industries seek 3rd party outsourcing vendors to create efficiencies
Outsourcing is not always successful and relationships with vendors need to be managed

98
13.5 Vendor & Software Selection
Step 1: Identify potential vendors.
Step 2: Determine the evaluation criteria.
Request for proposal (RFP)
[a document sent to potential vendors to submit a proposal describing their software package and explain
how it would meet the company’s needs.]

Step 3: Evaluate vendors and packages.


Step 4: Choose the vendor and package
Step 5: Negotiate a contract.
Step 6: Establish a service level agreement.
[formal agreements that specify how work is to be divided between the company and its vendors.]

99
Chapter Closing Case
• The Problem

• The Solution

• The Results

100

You might also like