You are on page 1of 9

Assignment

Course : MIS 105


Instructor :Dr. ASM Mostafizur Rahaman
Prepared By: MD Saif Anwar
RFID: 1811406630
Section : 27
Serial: 20
Topic : Alternative System Building
Approaches & Application Development
Date of submission:03/05/2018
Alternative System-Building Approaches

There are alternative methods for building an information system. They include:

● Systems lifecycle
● Prototyping
● Application software
packages
● End-user development
● Outsourcing

Alternative Application Development


. Rapid application development
. Joint application design
. Agile development
.Mobile application development
The System Life Cycle
The system life cycle is a series of stages that are worked through during the
development of a new information system .A lot of time and money can be wasted
if a system is developed that doesn’t work properly or do exactly what is required
of it .A new system is much more likely to be successful if it is carefully planned
and developed.

The systems lifecycle is a traditional methodology that uses a phased approach to


building a system, dividing systems development into formal stages, roughly
corresponding to the stages of systems development. Each stage consists of basic
activities that must be performed before the next stage can begin. Technical specialists
are responsible for much of the systems analysis, design, and implementation work;
end users are limited to providing information requirements and reviewing the work of
the technical staff The system lifecycle in systems engineering is a view of a system or
proposed system that addresses all phases of its existence to include system
conception, design and development, production and/or construction, distribution,
operation, maintenance and support, retirement, phase-out and disposal.

Prototyping 
The process of building an experimental system quickly and inexpensively for demonstration and
evaluation so that end users can better define information requirements. The prototype is a preliminary
model that is refined until it meets end-user requirements. The process of repeating the steps to build a
system over and over again is called an iterative process. Prototyping is more explicitly iterative than the
conventional life cycle and it actively promotes system design changes.
The four-step model of the prototyping process consists of the following:

1. Identify the user's basic requirements

2. Develop a working prototype

3. Use the prototype

4. Revise and enhance the prototype


Prototyping is most useful when some uncertainty exists about user requirements or a design solution. It
is especially valuable for the design of the end-user interface of an information system such as on-line
display and data entry screens.

Application Software
An application software package, another strategy in developing an information
system, is a set of prewritten, precoded application software programs that are
commercially available for sale or lease. There are application software packages
available for simple tasks and for complex mainframe systems. Packages are likely
to be chosen as a development strategy where functions, such as payroll systems,
are common to many companies or where there are limited information systems
resources for in-house development and when microcomputer applications are
being developed for end users.The use of software packages, along with vendor's
support staff and documentation reduces costly systems design work and
maintenance and support costs. Some package software developers provide some
features for customization, which allows a package to be modified to meet unique
requirements without destroying the integrity of the package software.

The key criteria in evaluating application software packages are: functions;


flexibility, user-friendliness, hardware, software resources, database requirements,
installation and maintenance effort, documentation, vendor quality, and cost. The
package evaluation process is often based on a request for proposal (RFP), which
is a detailed list of questions submitted to vendors of packaged software. Design
activities focus on matching requirements to package features. Instead of tailoring
the systems design specifications directly to user requirements, the design effort
will consist of trying to mold user requirements to conform to the features of the
package.

End User Development


In end-user development, software tools called fourth-generation
languages enable end users to create reports or develop software applications with
minimal or no technical assistance. There are seven categories of fourth-generation
languages:

● PC software tools

● Query languages

● Report generators

● Graphics languages

● Application generators

● Application software packages

● Very high level programming languages

Query languages are software tools that provide immediate online answers to


requests for information that are not predefined, such as "Who are the highest-
performing sales representatives?" Query languages are often tied to data
management software and to database management systems.
On the whole, end-user-developed systems are completed more rapidly than those
developed through the conventional systems life cycle. However, fourth-generation
tools still cannot replace conventional tools for some business applications because
they cannot easily handle the processing of large numbers of transactions or
applications with extensive procedural logic and updating requirements.

Outsourcing
Outsourcing means using an external vendor to build or operate a firm's
information systems. The system may be custom built or may use a
software package. In either case, the work is done by the vendor rather
than by the organization's internal information systems staff.
Outsourcing often saves application development costs or allows firms
to develop applications without an internal information system staff, but
it can also mean a loss of control over their information systems,
overdependence on external vendors, and may involve unforeseen,
hidden costs. Outsourcing is appropriate for applications that are not
sources of competitive advantage or that require technical expertise not
available in the firm

Alternative Application Development


Rapid-application development (RAD) is both a general term, used to refer to
adaptive software development approaches, as well as the name for James Martin's
approach to rapid development. In general, RAD approaches to software
development put less emphasis on planning and more emphasis on an adaptive
process. Prototypes are often used in addition to or sometimes even in place of
design specifications. RAD is especially well suited for (although not limited to)

developing software that is driven by user interface requirements.

Joint application design (JAD) is a process used in the life cycle area of


the dynamic systems development method (DSDM) to collect business
requirements while developing new information systems for a company. "The JAD
process also includes approaches for enhancing user participation, expediting
development, and improving the quality of specifications." It consists of a
workshop where "knowledge workers and IT specialists meet, sometimes for
several days, to define and review the business requirements for the system."[1] The
attendees include high level management officials who will ensure the product
provides the needed reports and information at the end. This acts as "a
management process which allows Corporate Information Services (IS)
departments to work more effectively with users in a shorter time frame".

Agile software development describes an approach to software


development under which requirements and solutions evolve through the
collaborative effort of self-organizing and cross-functional teams and
their customer(s)/end user(s). It advocates adaptive planning, evolutionary
development, early delivery, and continual improvement, and it encourages rapid
and flexible response to change. While there is significant anecdotal evidence that
adopting agile practices and values improves the agility of software professionals,
teams and organizations; some empirical studies have found no scientific evidence
Mobile app development is the act or process by which a mobile
app is developed for mobile devices, such as personal digital assistants, enterprise
digital assistants or mobile phones. These applications can be pre-installed on
phones during manufacturing platforms, or delivered as web applications using
server-side or client-side processing (e.g., JavaScript) to provide an "application-
like" experience within a Web browser. Application software developers also must
consider a long array. Mobile app development has been steadily growing.

You might also like