acquiring software
DESCRIPTION
Acquiring software. A company or organisation has three basic ways of acquiring (getting) software Buy it from some external source Buy it and customise (modify) it Develop it themselves (in-house or out) - PowerPoint PPT PresentationTRANSCRIPT
Acquiring software
A company or organisation has three basic ways A company or organisation has three basic ways of acquiring (getting) softwareof acquiring (getting) software
Buy it from some external source Buy it from some external source Buy it and customise (modify) itBuy it and customise (modify) it Develop it themselves (in-house or out)Develop it themselves (in-house or out)
Some of these three methods are more appropriate Some of these three methods are more appropriate for different organisations and for different types for different organisations and for different types of softwareof software
Systems Software
Systems Software includes software like Systems Software includes software like Operating Systems, Operating Systems, File Management Systems and Databases File Management Systems and Databases Communications and Networking SoftwareCommunications and Networking Software
These are usually These are usually very complex systems very complex systems purchased from large software developerspurchased from large software developers
Purchasing may include licensing arrangementsPurchasing may include licensing arrangements
Information Systems and Applications There are many generic IS applications for There are many generic IS applications for
particular domains / industriesparticular domains / industriese.g. banking, insurance, airline reservations etc.e.g. banking, insurance, airline reservations etc.
When an organisation perceives a need for an IS When an organisation perceives a need for an IS e.g. starting a new company, migrating from a e.g. starting a new company, migrating from a
paper based systempaper based system
or perceives a need for an or perceives a need for an improvedimproved IS ISe.g. the current system is too slow, incompatiblee.g. the current system is too slow, incompatible
the organisation may choose to the organisation may choose to buybuy a generic a generic application or application or buildbuild a custom application a custom application
Buying “Off The Shelf” softwareBuying “Off The Shelf” software installed in a matter of weeks or months installed in a matter of weeks or months
possibly modified - further maintenance and possibly modified - further maintenance and development development
tested several times, so it gives more refinements tested several times, so it gives more refinements & better de-bugging and documentation& better de-bugging and documentation
a professional team of programmers, designers, a professional team of programmers, designers, technical writers technical writers
good documentationgood documentation
known price of purchase or licenseknown price of purchase or license
generally a better and more economical choicegenerally a better and more economical choice
The organisation may decide to develop their own The organisation may decide to develop their own custom-built IS because generic applicationscustom-built IS because generic applications are not available or are not available or do not provide all of the required featuresdo not provide all of the required features are not compatible with other existing systemsare not compatible with other existing systems
Cost saving is not usually a reason because building Cost saving is not usually a reason because building your own is hugely expensiveyour own is hugely expensive
Building a custom IS can be done either:Building a custom IS can be done either: by external consultants orby external consultants or in house, by your own IS/IT staffin house, by your own IS/IT staff end usersend users
Build (develop) your own softwareBuild (develop) your own software
Knowing what you need In either case, the company must know In either case, the company must know exactlyexactly
what the IS is required to dowhat the IS is required to do
The company may carry out a The company may carry out a feasibility studyfeasibility study to to determine if the proposed IS will provide determine if the proposed IS will provide significant benefits significant benefits without unacceptable risks without unacceptable risks at an acceptable costat an acceptable cost
The feasibility study would indicate which The feasibility study would indicate which approach - buy or build - is betterapproach - buy or build - is better
System Requirements
Whether the organisation decides to purchase Whether the organisation decides to purchase or develop a system, the organisation now or develop a system, the organisation now carries out a detailed analysis to find out carries out a detailed analysis to find out
the functions that the IS must perform, the functions that the IS must perform,
the speed at which it must perform, the speed at which it must perform,
the hardware it will run on and the hardware it will run on and
the other systems with which it will be the other systems with which it will be compatiblecompatible
Functional and Non-functional Requirements
Individual IS have both functional and non-Individual IS have both functional and non-functional requirementsfunctional requirements
Non-functional requirements are NOT “soft”Non-functional requirements are NOT “soft” A particular IS may need to be highly secure, very A particular IS may need to be highly secure, very
fast, highly reliable - these are not functions the IS fast, highly reliable - these are not functions the IS performs, so they are non-functional requirements.performs, so they are non-functional requirements.
These requirements may affect the way searches These requirements may affect the way searches are carried out, the way data is arranged in are carried out, the way data is arranged in databases and so on. The way non-functional databases and so on. The way non-functional requirements are met are often requirements are met are often highlyhighly technical technical
The interface and user centred IS
A special class of non-functional requirements A special class of non-functional requirements may relate to the user interfacemay relate to the user interface
The interface may be required to be: easy to The interface may be required to be: easy to learn, easy to use, provide adequate support for learn, easy to use, provide adequate support for users. users.
These are NOT trivial nor universal These are NOT trivial nor universal requirements. They can have a significant requirements. They can have a significant impact on the way certain functions are impact on the way certain functions are implemented or on the overall cost and implemented or on the overall cost and development time for the ISdevelopment time for the IS
Buying and the RFT If the company decides to buy an IS they may If the company decides to buy an IS they may
send out a Request for Tenders (RFT or RFP)send out a Request for Tenders (RFT or RFP)
An RFT provides software houses with all the An RFT provides software houses with all the requirements for the proposed ISrequirements for the proposed IS
Software houses submit “tenders” which try to Software houses submit “tenders” which try to convince the buyer to choose their softwareconvince the buyer to choose their software
The buyer must evaluate these tenders impartially The buyer must evaluate these tenders impartially or there may be legal implications. If a suitable IS or there may be legal implications. If a suitable IS is found, the organisation signs contracts to buy. is found, the organisation signs contracts to buy.
Buying Commercial Off The Shelf software (COTS)
Buying Commercial Off The Shelf software (COTS)
Call forTenders
Initiation
Contract negotiation
Needs
Evaluation & selection
Building and the SDLC
Building an IS is a Building an IS is a hugehuge job, job, often involving dozens or hundreds of staff often involving dozens or hundreds of staff lasting moths or yearslasting moths or years costing hundreds of thousand or millionscosting hundreds of thousand or millions
Because of this, most organisations follow a Because of this, most organisations follow a pattern called the Software Development Lifecycle pattern called the Software Development Lifecycle (SDLC) to try to streamline the process and ensure (SDLC) to try to streamline the process and ensure success. success.
There are a number of variations on the SDLCThere are a number of variations on the SDLC
Typical SDLC
Feasibility study - may already have been doneFeasibility study - may already have been done Plan - all the steps and gather resourcesPlan - all the steps and gather resources Analysis - find out exactly what is neededAnalysis - find out exactly what is needed
Design - work out how to build itDesign - work out how to build it
Development - produce the computer “code” (4GLs)Development - produce the computer “code” (4GLs)
Testing - make sure it worksTesting - make sure it works Validation - make sure it does what is requiredValidation - make sure it does what is required
Implementation - get the IS into the organisationImplementation - get the IS into the organisation
Get ready to start againGet ready to start again
SDLC and methodologies
SDLC is a framework - it tells us about broad SDLC is a framework - it tells us about broad steps and how to move from one to anothersteps and how to move from one to another
This may not be sufficient guidance for a large This may not be sufficient guidance for a large project, so some companies buy and use detailed project, so some companies buy and use detailed sets of instructions, called methodologiessets of instructions, called methodologies
Methodologies are expensive and require both Methodologies are expensive and require both training and commitment e.g. SSADMtraining and commitment e.g. SSADM
Feedback PlanPlan
AnalysisAnalysis
DesignDesign
DevelopmentDevelopment
TestingTesting
Implementation &Implementation &
DocumentationDocumentation
Step 1. Feasibility study
The goal of this phase The goal of this phase is to determine the is to determine the problem and is problem and is sometimes called the sometimes called the preliminary preliminary Investigation or system Investigation or system survey.survey.
Tools of Feasibility study
The systems The systems analyst will analyst will develop an develop an
organizational organizational chart to identify chart to identify
all relevant all relevant stakeholders.stakeholders.
Pres. C. Stenos
VP A. Mapp
VP Z. Hewn
Marketing
I. SimonSales O. Pine
IT. V. Gear
Pay. J. Ria
Purchase R.
South
Defining the Problem involves Nature of the problemNature of the problem The systems analyst and the users/clients must The systems analyst and the users/clients must
agree on the agree on the nature of the “problem”nature of the “problem”..
Scope of the problemScope of the problem Determining the scope of the problem sets Determining the scope of the problem sets
limitations on how extensive the proposed system limitations on how extensive the proposed system will be, the eventual budget and project schedules will be, the eventual budget and project schedules
Objectives of the projectObjectives of the project Determining what the users/clients think the
system should be able to do
Step 1b Authorisation & Planning
Following the feasibility Following the feasibility study, someone in study, someone in
authority must authorise authority must authorise the project - the project - the project the project
sponsorsponsor
A A project managerproject manager will will be appointed to oversee be appointed to oversee the planning, resourcing the planning, resourcing
and progress of the and progress of the projectproject
Planning Project planning means identifying all the tasks Project planning means identifying all the tasks
(and sub-tasks) that need to be done. The amount (and sub-tasks) that need to be done. The amount of time for each of these tasks is of time for each of these tasks is estimatedestimated..
A Gantt chart is good for organising the tasks, A Gantt chart is good for organising the tasks, their start/finish dates and the resources they needtheir start/finish dates and the resources they need
Estimation of times is risky so PERT uses 3 Estimation of times is risky so PERT uses 3 estimates to get the most accurate overall planestimates to get the most accurate overall plan
Critical Path Method (CPM) identifies all the tasks Critical Path Method (CPM) identifies all the tasks which might delay the project so they can be which might delay the project so they can be watched more closelywatched more closely
Step 2 Systems Analysis
Systems analysis is the process of studying an Systems analysis is the process of studying an existing system to determine how it works and existing system to determine how it works and how it meets client and user needs.how it meets client and user needs.
ClientsClients contract to have contract to have the systems analysis done.the systems analysis done.
UsersUsers are people who will are people who will have contact with the have contact with the system (employees and system (employees and customers).customers).
Flowcharts A flowchart is a A flowchart is a
pictorial representation pictorial representation of a step-by-step of a step-by-step solution to a problem.solution to a problem.
Flowchart Basics
A flowchart consists of A flowchart consists of arrows to represent arrows to represent direction the program direction the program takes and boxes and takes and boxes and symbols to represent symbols to represent actions.actions.
Flowchart Symbols
Process Start/Stop
Input/Output
Decision
Connector
Flow direction
Flowchart Symbols
Show message
Start Deposit
Get amount
Valid ?
Add balance & amt
No
Show new balance 22
Yes