You are on page 1of 12

Chapter 9

Application Development by Information Systems Professionals

Background
If the organization has information systems experts, they develop their own custom
applications. If the organization does not have IS experts, they want to work with outside
suppliers to temporarily provide IS personnel or to develop software specifically for the
organization.
In this section two discussions are given for developing customized applications, namely
(1) discussing the life cycle of traditional system development (SDLC) and (2) analytical
environment and demand-oriented problems, as well as two recent updates namely rapid
application development (RAD) and development approaches agile.

Systems Development Life Cycle Methodology


The System Development Life Cycle is defined as a traditional approach to developing
customized software for an organization. There are three phases in the system life cycle, namely
definition, construction and implementation. SDLC is a very structured approach. SDLC
provides a starting point for understanding what is involved in developing application systems.

1. The SDLC Steps


SDLC includes three phases and eight phases, but this number also depends on
organizational conditions.
(1) The definition phase is an important phase because it describes the development of the
system and in this phase also breaks down in detail about what should be done by the
system so that IS specialists (the team working to build the system) can build the correct
system and in accordance with needs.
(2) In the construction phase, the IS expert produces a working system based on the
specifications specified at the beginning. This phase includes the use of structured
techniques such as data flow diagrams, E-R models and structure charts.
(3) In the implementation phase, the new system will be run in the organization and will
continue to be maintained or changed when needed so that it will always reflect what the
organization needs.
2. Initiating New Systems Projects
There are several approaches taken to decide on a new application. This process
starts from the formal submission of proposals by the business department. This proposal
will be reviewed and prioritized by the committee at the department or division level.
After a proposal is approved and resources are assigned to a project, the formal SDLC
process begins.
For some projects, initial approval only serves as support to proceed to the feasibility
analysis stage. After that, additional approval is required. The document of the results of
the feasibility analysis is used as the basis for making a decision whether to invest in a
custom application.
3. Definition Phase
1) Feasibility Analysis
Project managers and systems analysts are assigned to work with business
managers in developing detailed system feasibility analyzes.
There are three types of eligibility that will be assessed namely in terms of
economic, operational and technical. Information systems analysts work with
sponsoring managers and / or other business managers to define what new systems
are expected to do, outputs to be produced, inputs to be received, how inputs are
obtained and databases needed.

2
Important activities in this stage are defining the scope or boundaries of the
system, related to who will be served by the system, what will be done and not done
by the system and processing data that is entered and not entered.
Operational feasibility is related to assessing the extent to which the proposed
system can overcome business issues or create opportunities. Business managers and
IS analysts work together to develop a cost-benefit analysis of the proposed system to
determine economic feasibility.
The results of the feasibility analysis are the system proposal or business case,
which is a 10-20 page document that contains a brief description of the executive and
a summary of recommendations, a description of what the system will do and how the
system is run, an analysis of the costs, benefits and risks of the proposed system and
project and plans system development. This document will be discussed and approved
by the sponsor and IS project manager and then reviewed by the authorities setting
priorities and approving the system.
2) Requirements Definition
This stage begins if the documents produced from the feasibility analysis have
been approved. This stage determines the accuracy of system development and
requires participation from user management. If this stage is not done properly, the
wrong system will be created and the cost of changes is large.
Requirement definition is also called system analysis or logical design, which
is the definition of processes, data flows and relationships between data. The system
analyst is responsible for ensuring that the requirements are described in detail to be
given to the party who built the system.
The result of this stage is a system requirement document that contains a
detailed description of inputs, system outputs and the processes undertaken to convert
inputs into outputs as well as revisions to cost-benefit analysis and revised plans for
the remaining stages of project development. The results of this stage will be
requested for approval by the business manager where the system is built and the
appropriate IS manager. After the document has been approved, it means that the
system specifications are fixed and when changes occur, a formal approval process
must be carried out again.

3
4. Construction Phase
a) System Design
IS experts design systems technically or physically based on documents produced
in the definition phase. In this stage, the selection of hardware and software is used to run
the system, design the structure and contents of the database and define the processing
module (program) contained in the system and the interrelationships between programs.
b) System Building
There are two activities carried out in this stage, namely producing programs and
developing or increasing databases and files that will be used by the system. This work is
carried out by IS experts. Users are asked to answer the question whether there are
specifications that have not been recorded and help interpret the specifications and design
documents. At this stage, new hardware and software support is also purchased, which
requires consultation with SI and operations personnel.
c) System Testing
Includes testing by IS experts and users. Each module must be tested then the
modules will be arranged into sub-systems and tested. Subsystems are then combined
into a system and then tested. SI experts are responsible for producing high-quality
systems and running systems efficiently. Tests are carried out to ensure that
specifications are met, performance is adequate even when system traffic is congested
and the system is safe enough.
5. Implementation Phase
A. Installation
The success of this phase depends on the role of the business manager. System
projects often involve major changes in the work of parties who will use the system so these
changes must be anticipated and planned before actual implementation is carried out. Both IS
specialists and end users have an important role in this implementation phase. Their
participation in the installation phase of the new system includes building databases and files
and converting relevant data from the old system to the new system.
IS experts and users at this stage involve formulating files and databases and
converting relevant data from one or more old systems to the new system. Sometimes data on
old systems may be inaccurate and incomplete, so users need to tidy it up. This process

4
involves entering data that has been revised so that it requires efforts from the user
department. Another important activity in the installation phase is to train the end user of the
system as well as other parties affected by the new system.

Switching to a new system may be a difficult process for users because the new
system must be integrated with organizational activities. Users not only have to learn how to
use the new system but also change the way they do work. The new system will fail if the
user does not want or does not know how to use it. Some strategies for switching to a new
system are:
a. Parallel strategy: the organization continues to operate with the old system together with
the new system until the new system is deemed adequate and the old system can be
stopped. This strategy is a conventional conversion strategy. The weakness of this
strategy is that employees must use both systems (the old system and the new system)
which is certainly less efficient.
b. Pilot strategy: a new system is only introduced in one part of the organization before it is
applied to the whole organization. The purpose of this strategy is to overcome the
problems associated with implementing a new system when the system is implemented as
a whole in the organization.
c. Phased conversion: For complex companies, a strategy that might be suitable for
implementation is a phased conversion strategy. Examples of the application of phased
conversion strategies for example are companies that have a large order process and
inventory control system. In this strategy, the company can get a faster profit from
implementing the new system.
d. Cutover Strategy: In this strategy, the company immediately ignores the whole system
(totally abandon) the old system when the new system is implemented in the company.
This cutover strategy has a greater inherent risk but on the other hand, this strategy is also
interesting to do when a company cannot implement two systems simultaneously.

5
B. Operations
The second phase of the implementation phase is the operation phase of the
application that has been built. Usually companies save approximately three application
versions of applications that are built / developed which include:
o Development version
o Test version
o Production version or can also be called a finished version of an application
The thing to note at this stage is the operation of an application version will not be
ready to use if the documentation of the application is available. The documentation is
divided into two types, namely:
o System documentation for IS specialists who will operate and maintain the system
o Documentation for users
C. Maintenance
Maintenance is a process to make changes after the system is used. The reason for
doing maintenance is to correct the errors contained in the software system. The maintenance
process can also be carried out to be able to adapt to changes in the organization. For
example, changes due to new types of hardware and the presence of new software systems
and changes in government regulations. In addition, the other main cause of a company or
organization doing maintenance of the system is to increase the ability of the system
(enhance the system).
To be able to make changes in the system, the maintenance programmer must first
consider several things including:
o What program should be changed
o Which specific part of the program needs to be changed

6
Some obstacles that might occur in the maintenance process include:
a. When changes are made in a complex system, they can have a ripple effect. If one is
affected, the other will also be affected
b. Another problem is that usually many IS practitioners choose to use the new system
compared to the old system. Therefore, the maintenance process is considered as low-
status work
c. The lack of IT staff for maintenance is one problem because companies can lag behind in
terms of their information systems.

D. The SDLC Project Team


The team formed to carry out SDLC is usually temporary. Personnel involved in it
also consists of IS personnel and from other business units. Usually this SDLC project team
has a project manager who usually:
o Traditionally derived from IS personnel
o But it can also come from business units
o Can also be combined
o This project manager serves as the person responsible for the success of a system project
in producing a quality system and with an appropriate budget.
In the SDLC project team in addition to the project manager there is also a system
analyst. This system analyst has a duty to determine the feasibility of the new system and to
develop in detail the system requirements for customized applications. Usually this system
analyst works closely with managers and end-users.
One important qualification including:
o Have the ability to solve problems (problem solving skills)
o Have adequate knowledge of information technology
o Having an understanding of the company's business well
o Managing an SDLC Project

7
The criteria for determining a successful SDLC project include:
a. Project size that can be managed (manageable project size). Projects that are done as
much as possible can be managed in the sense that if the IS project that is done by the
scope is too large it will be very difficult to be able to balance the costs that have been
budgeted.
b. Requirements, An accurate definition (accurate requirements definition). This is
important to do as discussed above that the requirements definition is needed to create a
good system design and in accordance with organizational needs.
c. Executive Sponsorship. In order for the IS project to be successful it needs support and
commitment from the company's executive management. Without the support of
company executives, IS projects will be difficult to work on.

 Advantages and Disadvantages of SDLC


The advantages of using SDLC include:
o The SDLC process is very structured and has a systematic process
o In the definition phase as explained above, that this SDLC process requires the overall
definition requirements
o Presenting clear milestones with management approval at each phase
The weaknesses of the SDLC system include:
o This SDLC tends to take a long time
o And requires commitment from all people in the company (top-down)

Prototyping Methodology
The SDLC method discussed above bases that the business requirements for the
system are static throughout the life of the project. In the next period, another approach was
developed, namely the prototyping approach or prototype approach. In this prototype
approach allows faster system development and then can be improved after the user tries the
prototype form.
In the discussion here, the prototype approach is positioned as an alternative to
SDLC. When this viewpoint is taken, the prototype approach is deemed inappropriate and
less practical if used on large and complex systems. However, when this prototype is used in

8
the SDLC process to help determine the needs of a customized system, it can make the
SDLC process a success. That is because prototyping provides a practical way for companies
to be able to use real systems. The following are the steps that must be taken in implementing
the prototype approach, including:

1) The first step taken is identification of the basic requirements (basic requirements) of the
basic version of the system. System analysts and end-users meet to discuss data input and
processing, and output from the system
2) The second step is to build an initial prototype system based on the requirements outlined
above. The system builder then chooses the appropriate software tools and allocates the
data needed so that the data can be accessed easily. After that the system builder builds
the desired system using higher level languages. This second step can take several days to
several weeks. Important note, this second stage can work well if the quality of the data
needed to build the system is good.
3) The third step relates to the responsibility of the user or user of the system because in this
third step the information system has entered the implementation phase so that the
feedback that must exist is the result of user experience in using this prototype.
4) The fourth step relates to the third step, in this step the system builder modifies the
system to include some changes that need to be made to the prototype system.
5) When the end user is satisfied with the modified prototype system in step four, then the
fifth step begins. The fifth step involves evaluating the final prototype as an operating
system.

9
6) If the prototype has become the company's operational system, in this sixth step the
system builder then completes the construction phase by making important changes to
improve efficiency.
7) The last step is to install the prototype system, operate it and perform maintenance.

a. The Prototype Project Team


This prototype project team can come from IS representatives and users who need the
system. Personnel who are in the prototype project team must have the qualifications to be
able to build systems with sophisticated tools (advance tools). In addition, it also requires a
significant role from the user or prototype users to provide feedback to the existing
prototype.
b. Advantages and Disadvantages of the Prototype Approach
Some of the advantages of using the prototype approach include:
o It only needs identification of the basic needs of the company to decide to use the
prototype approach
o This approach is used to develop systems that radically change the way a system works
so that users can directly evaluate the system.
o By using this prototype, companies can explore new technologies (in the form of
prototypes themselves)
o The system can be tested faster
o Costs and benefits can be immediately known after the user uses the initial prototype
o Easier to be accepted by users

As for the weaknesses of using the prototype approach are as follows:


o There are limitations in terms of security (security) and control of features in the
application being used
o Final documentation may be incomplete
o It will be very difficult to manage user expectations for the system because this system is
a prototype system.

10
Newer Approaches
Demand for the development of new application systems has increased faster in the last
decade. In this section, we will discuss two new systems that have higher speeds compared to
SDLC.
1. Rapid Application Development (RAD)
RAD is a hybrid method that combines aspects of the SDLC method and prototyping
so that the system can be produced more quickly. Rapid application development (RAD) or
rapid prototyping is a model of software development processes classified as incremental
(multilevel) engineering. RAD emphasizes short, short and fast development cycles. Short
time is an important limitation for this model. Rapid application development uses an
iterative method in developing systems in which the working model of the system is
constructed at the beginning of the development phase with the aim of establishing user
requirements and subsequently removed. Working models are used sometimes as the basis
for the design and implementation of the final system.

2. Agile Methodologies
Agile methods are similar to prototyping and RAD methods but the delivery cycle for
new product codes is shorter and requires collaboration between team members. Fowler
(2003) recommends that agile methodologies are suitable for dynamic situations, team
members who have strong motivation and customers are willing to become members of the
core team and the core team that develops relatively small systems. Agile methodologies
include various techniques and methods for example extreme programming and scrum.

11
Extreme Programming (XP), is an approach or software development model that tries
to simplify the various stages in the development process so that it becomes more adaptive
and flexible. XP is not only focused on coding but covers all areas of software development.
XP takes the 'extreme' approach to iterative development.
In XP, there are 5 values that form the foundation of communication, simplicity,
feedback, courage, and respect. Effective communication between software developers and
the parties involved is very important. In XP, design is used as an intermediate requirement.
The design is made as simple as possible so that it is easy to implement the code.
SCRUM, the origins of the Scrum agile method are in this team sport, in which well-
orchestrated movement between team members is important. A Scrum Master (SM)
organizes the Scrum team work, serves as the team’s liaison with other teams and with
clients, and monitors team performance. Scrum emphasizes independent project teams,
coordination and communication between and within teams, iterative and continuous
monitoring of work, and highly efficient work methods.

12

You might also like