Professional Documents
Culture Documents
Mustafa
UNIT 01
Systems Development
Foundations
5 D. Suleiman H. Mustafa
6 D. Suleiman H. Mustafa
Why Outsourcing?
• Outsourcing the critical software tasks and
projects is an efficient approach. Potential
advantages of outsourcing software
development may include:
– Cost saving on project execution
– Time-efficient project execution and smooth project
delivery within the given time and budget.
– Better Experience and Resources
– Risk reduction and flexible services which can be
adjusted to the demands and needs.
7 D. Suleiman H. Mustafa
8 D. Suleiman H. Mustafa
9 D. Suleiman H. Mustafa
10 D. Suleiman H. Mustafa
11 D. Suleiman H. Mustafa
Six Sources of Software
1. Information technology service firms
2. Packaged software providers (off-the-shelf
software)
3. Vendors of enterprise solutions software (ERP)
4. Cloud computing providers
5. Open-source software solutions
6. In-house development (build it yourself)
13 D. Suleiman H. Mustafa
14 D. Suleiman H. Mustafa
15 D. Suleiman H. Mustafa
16 D. Suleiman H. Mustafa
• Utilize when
– Organization lacks resources to develop in-
house
– Suitable off-the-shelf solution is not available
• What they do?
• Develop custom information systems
• Develop, host and run applications
• Can provide domain expertise
• They employ consultants with domain-specific
experience
• See Table 2-1 for a list of top 10 firms
17 D. Suleiman H. Mustafa
18 D. Suleiman H. Mustafa
19 D. Suleiman H. Mustafa
• Produce pre-packed or Commercial Off-the-
Shelf (COTS) systems
– MS Project, Intuit QuickBooks,
• Products range from broad-based packages
(MS Office) to industry specific packages
(AP/AR)
• COTS software can meet up to 70% of an
organization’s needs.
• Two types of software applications:
– Turnkey: not modified, one size fits all
– Customized (non-turnkey): modified by vendor to
meet great portion of user needs
20 D. Suleiman H. Mustafa
21 D. Suleiman H. Mustafa
COTS vs. Custom Software
• Custom software development is the process of
designing, creating, deploying and maintaining
software for a specific set of users, functions or
organizations.
• In contrast to commercial off-the-shelf software
(COTS), custom software development aims at a
narrowly defined set of requirements.
• Custom software addresses users’ specific
needs more comprehensively than traditional off-
the-shelf packages.
22 D. Suleiman H. Mustafa
Off-the-Shelf vs. Custom Software
23 D. Suleiman H. Mustafa
Criteria
› Cost / Benefit - In-house versus purchase
› Functionality
› Vendor Support
› Viability of Vendor
› Flexibility
› Documentation
› Response Time
› Ease of Installation
24 D. Suleiman H. Mustafa
25 D. Suleiman H. Mustafa
Information from vendor
› Documentation
› Marketing literature
› Questionnaire
Request for Proposal (RFP)
Software test drive
Feedback from other users
Independent software testing services
26 D. Suleiman H. Mustafa
• Enterprise software or ERP (Enterprise
Resource Planning) System is a collection of
computer programs that have
– common business applications, organization
modeling tools, and application development tools.
• The software is intended to solve an enterprise-
wide problem, rather than a departmental
problem.
– It aims to improve the enterprise's productivity and
efficiency by providing business logic support
functionality.
27 D. Suleiman H. Mustafa
28 D. Suleiman H. Mustafa
• ERP system consists of a series of integrated
modules
• Accounting
• Distribution
• Manufacturing
• Human Resources
• Integrated to focus on business processes rather
than business functional areas
– Enables an organization to integrate all parts of a
business process in a unified information system
– E.g. - All aspects of an order transaction occur
seamlessly in single information system
29 D. Suleiman H. Mustafa
30 D. Suleiman H. Mustafa
31 Purchase Order
D. Suleiman H. Mustafa
– Benefits
• Single repository for all aspects of a business
process
– Ensures more consistent and accurate data
– Less maintenance
• Flexibility of modules
– Additional modules can be added as needed
– Immediately integrated into existing system
– Disadvantages
• Complexity and time of implementation
• Reliance upon consultants
• Often, organizations must change the way that they do
business in order to use systems
– ERP vendors
• SAP AG, Oracle Corp
32 D. Suleiman H. Mustafa
• Cloud computing is the delivery of different
computer system resources and services
through the Internet, including
– data storage, servers, databases, networking, and
software.
• Cloud computing is the on-demand availability of
resources and services without direct active
management by the user.
• Cloud-based storage makes it possible to save
files to a remote database and retrieve them on
demand.
33 D. Suleiman H. Mustafa
34 D. Suleiman H. Mustafa
35 D. Suleiman H. Mustafa
• Five essential characteristics
– On-demand self-service (no vendor interaction)
– Broad network access
– Resource pooling
– Rapid scalability (option to increase/decrease service)
– Measured Service
• Some examples:
– Three vendors dominate the public cloud computing
market: Amazon Web Services (AWS), Microsoft
Azure, and Google Cloud Platform (GCP),
36 D. Suleiman H. Mustafa
• Pay for use (software as a service):
dynamically rent software from third party
providers (runs on remote servers = the cloud)
• Pay for service: Applications bought, installed
and maintained by service provider
• Pay for platform (hardware as a service):
dynamically rent platform and manage your
own virtual data centre
37 D. Suleiman H. Mustafa
› Benefits:
› Freeing internal IT staff
Faster access to applications than internal
development
Lower-cost access to corporate-quality
applications
› Concerns
Reliability
Security of information
Compliance with government regulations
38 D. Suleiman H. Mustafa
• Open-source software (OSS) is computer
software that is released under a license in
which the copyright holder grants users the
rights to use, study, change, and distribute the
software and its source code to anyone and for
any purpose.
• Open-source software may be developed in a
collaborative public manner.
39 D. Suleiman H. Mustafa
› Freely available
› Includes source-code
› Maintained by a group of interested individuals
› Some examples
– Linux
– Firefox
– mySQL
40 D. Suleiman H. Mustafa
41 D. Suleiman H. Mustafa
In-House Development
› Complete system
› Hybrid systems
› Off the shelf PLUS custom code
42 D. Suleiman H. Mustafa
43 D. Suleiman H. Mustafa
44 D. Suleiman H. Mustafa
45 D. Suleiman H. Mustafa
Software Reuse
Use of previously written software resources in
new applications
50 D. Suleiman H. Mustafa
51 D. Suleiman H. Mustafa
END
52 D. Suleiman H. Mustafa