Answer & Explanation:A13 PIP.docx chapter-2-system-development-life-cycle-methodology.pdf Software Requirements Specification for SplitPay.pdf
a13_pip.docx
chapter_2_system_development_life_cycle_methodology.pdf
software_requirements_specification_for_splitpay.pdf
Unformatted Attachment Preview
Answer the following questions after reading the first 10 pages of the Split Pay System
Specification Description. Use the knowledge and understanding that you gained from
reading the first 16 pages of System Development Life Cycle Methodology. As well as
from the videos for this assignment.
(20 points each)
1. What systems development model approach would you use to develop this system?
2. Why is the system a good match for the systems development model you chose?
3. What would be the advantage of using your chosen systems development model?
4. What situations might you encounter that would be a problem for the model you
chose?
5. What would be your second choice of a systems development model for this system
and why?
2
System Development Life Cycle Methodology
Learning Objectives :
•
To introduce the general concepts of various approaches of systems development, their
framework, advantages and disadvantages;
•
To explain in detail the phases involved in Systems Development Life Cycle(SDLC);
•
To understand the key issues while acquiring or developing system for achieving goals
set;
•
To discuss in detail various System Development Tools like – DFD, Decision Tree,
Flowcharts etc.; and
•
To understand the auditors’ role in SDLC.
2.1 Introduction
Information systems serve many different purposes, ranging from the processing of business
transactions – to provide information needed to decide recurring issues, assisting senior
officials with difficult strategy formulation, and linking office information and corporate data.
But how do such complex information systems come into existence? Of course, through
people. Technology has developed at a rapid pace but the most important aspect of any
system is human know-how and the use of ideas to harness the computer so that it performs
the required tasks. This process is essentially what system development is all about. To be of
any use, a computer-based information system must function properly, be easy to use, and
suit the organization for which it has been designed. If a system helps people to work more
efficiently they will use it. If not, they will surely avoid it.
2.2 System Development Process
In business, systems development refers to the process of examining a business situation with the
intent of improving it through better procedures and methods. System development can generally
be thought of as having two major components : System Analysis and System Design.
•
System Analysis is the process of gathering and interpreting facts, diagnosing
problems, and using the information to recommend improvements to the system.
•
System Design is the process of planning a new business system or one to replace or
complement an existing system.
But before planning can be done, one must thoroughly understand the old system and
determine how computers can be used (if at all) to make its operation more effective.
© The Institute of Chartered Accountants of India
2.2
Information Systems Control and Audit
Example : Consider stockroom operations of a clothing store. What measures can be taken to
control its inventory and gain access to more up-to-date information about stock levels and
reordering in a better way.
Solution : The Stores Manager asks a System Analyst to organize the stockroom operations.
Before an analyst can design a system to capture data, update files and produce reports, he
needs to know more about :
•
how the store currently operates,
•
what forms are being used to store information manually, such as requisitions, purchase
orders and invoices etc,
•
what reports are being produced and how they are being used, etc.
To proceed, an analyst seeks information about lists of reorder notices, outstanding purchase
orders, records of stock on hand, and other reports. He tries to understand how the existing
system works and more specifically what the flow of information through the system looks like
and assesses as carefully as possible, what the future need of the system will be and what
changes should be considered to meet these needs. He may recommend alternatives for
improving the situation which then management decides to accept or reject. The plan includes
all system design features, file specifications, operating procedures, and design features, and
equipment and personnel requirements. The system design is like the blue print for a building,
it specifies all the features that should be there in the finished product.
2.2.1
Achieving System Development Objectives: There are many reasons why
organizations fail to achieve their systems development objectives. Some of them are as follows :
•
Lack of senior management support and involvement in information systems
development. Developers and users of information systems watch senior management to
determine which systems development projects are important and act accordingly by
shifting their efforts away from any project which is not receiving management attention.
In addition, management can see that adequate resources, as well as budgetary control
over use of those resources, are dedicated to the project.
•
Shifting user needs. User requirements for information technology are constantly
changing. As these changes accelerate, there will be more requests for systems
development and more development projects. When these changes occur during a
development process, the development team faces the challenge of developing systems
whose very purposes might change since the development process began.
•
Development of strategic systems. Because strategic decision making is unstructured,
the requirements, specifications, and objectives for such development projects are
difficult to define.
•
New technologies. When an organization tries to create a competitive advantage by
applying advance Information technology, it generally finds that attaining system
development objectives is more difficult because personnel are not as familiar with the
technology.
© The Institute of Chartered Accountants of India
System Development Life Cycle Methodology
2.3
•
Lack of standard project management and systems development methodologies. Some
organizations do not formalize their project management and system development
methodologies, thereby making it very difficult to consistently complete projects on time
or within budget.
•
Overworked or under-trained development staff. In many cases, systems developers
often lack sufficient education background. Furthermore, many companies do little to help
their development personnel stay technically sound. Currently in these organizations, a
training plan and training budget do not exist.
•
Resistance to change. People have a natural tendency to resist change, and information
systems development projects signal changes – often radical – in the workplace. When
personnel perceive that the project will result in personnel cutbacks, threatened
personnel will dig in their heels, and the development project is doomed to failure.
•
Lack of user participation. Users must participate in the development effort to define their
requirements, feel ownership for project success, and work to resolve development
problems. User participation also helps reduce user resistance to change.
•
Inadequate testing and user training. New systems must be tested before installation to
determine that they operate correctly. Users must be trained to effectively utilize the new
system.
To overcome these and other problems, organizations must execute the systems development
process efficiently and effectively.
2.2.2 System Development Team: Several people in the organization are responsible for
systems development. In large systems, the worth of a particular project is typically decided by
a top management level steering committee, usually consisting of a group of key Information
Systems services users that acts as a review body for Information Systems plans and
applications development. The steering committee ensures that ongoing systems development
activities are consistently aimed at satisfying the information requirements of managers and
users within the organization. A project management team generally consists of both computer
professionals and key users. System analysts are subsequently assigned to determine user
requirements, design the system and assist in development and implementation activities. In
any systems organization, however, systems designers take a lead role during the design,
development and implementation stages.
In end-user developed systems, the end-user is ultimately responsible for the system. Generally,
the end-user seeks guidance from information centre personnel while developing the system.
2.2.3
Accountants’ involvement in Development work: Most accountants are
uniquely qualified to participate in systems development because they may be among the few
people in an organization who can combine knowledge of IT, business, accounting, and
internal control, as well as behavior and communications, to ensure that new systems meet
the needs of the user and possess adequate internal controls. They have specialized skills such as accounting and auditing – that can be applied to the development project. For
example, an accountant might perform the analysis of a proposed system’s costs and benefits.
© The Institute of Chartered Accountants of India
2.4
Information Systems Control and Audit
2.3 Systems Development Methodology
A system development methodology is a formalized, standardized, documented set of
activities used to manage a system development project. It refers to the framework that is
used to structure, plan and control the process of developing an information system. Each of
the available methodologies is best suited to specific kinds of projects, based on various
technical, organizational, project and team considerations. The methodology is characterized
by the following:
•
The project is divided into a number of identifiable processes, and each process has a
starting point and an ending point. Each process comprises several activities, one or
more deliverables, and several management control points. The division of the project
into these small, manageable steps facilitates both project planning and project control.
•
Specific reports and other documentation, called Deliverables must be produced
periodically during system development to make development personnel accountable for
faithful execution of system development tasks.
•
Users, managers, and auditors are required to participate in the project which generally
provide approvals, often called signoffs, at pre-established management control points.
Signoffs signify approval of the development process and the system being developed.
•
The system must be tested thoroughly prior to implementation to ensure that it meets
users’ needs.
•
A training plan is developed for those who will operate and use the new system.
•
Formal program change controls are established to preclude unauthorized changes to
computer programs.
•
A post-implementation review of all developed systems must be performed to assess the
effectiveness and efficiency of the new system and of the development process.
Approaches to System Development : Since organizations vary significantly in the way they
automate their business procedures, and since each new type of system usually differs from any
other, several different system development approaches are often used within an organization.
All these approaches are not mutually exclusive, which means that it is possible to perform some
prototyping while applying the traditional approach. These approaches are as follows :
(i)
Waterfall : Linear framework type
(ii) Prototyping : Iterative framework type
(iii) Incremental : Combination of linear and iterative framework type
(iv) Spiral : Combination linear and iterative framework type
(v) Rapid Application Development (RAD) : Iterative Framework Type
(vi) Agile Methodologies
2.3.1 The Traditional / Waterfall Approach / Sequential Approach: The waterfall approach
is a traditional development approach in which each developer in a development team works in
© The Institute of Chartered Accountants of India
System Development Life Cycle Methodology
2.5
different phases. These phases include requirement analysis, specifications and design
requirements, coding, final testing, and release. The waterfall approach is used on small projects
because it eliminates testing to identity problems early in the process.
In the traditional approach of system development, activities are performed in sequence. Fig. 2.3.1
shows examples of the tasks performed during each phase of the traditional approach. When the
traditional approach is applied, an activity is undertaken only when the prior step is fully completed.
Overview of WaterFall Model
Preliminary Investigation
Requirement Analysis
System Design
System Development
System Testing
System
Implementation
and
Maintenance
Fig. 2.3.1 : Steps in Traditional Approach
Framework type : Linear
Basic Principles
(i)
Project is divided into sequential phases, with some overlap and splash back acceptable
between phases.
(ii)
Emphasis is on planning, time schedules, target dates, budgets and implementation of an
entire system at one time.
(iii) Tight control is maintained over the life of the project through the use of extensive written
documentation, as well as through formal reviews and approval/signoff by the user and
information technology management occurring at the end of most phases before
beginning the next phase.
© The Institute of Chartered Accountants of India
2.6
Information Systems Control and Audit
Strengths
(i) Ideal for supporting less experienced project teams and project managers or project
teams whose composition fluctuates.
(ii) An orderly sequence of development steps and design reviews help ensure the quality,
reliability, adequacy and maintainability of the developed software.
(iii) Progress of system development is measurable.
(iv) Conserves resources.
Weaknesses
(i) Inflexible, slow, costly, and cumbersome due to significant structure and tight controls.
(ii) Project progresses forward, with only slight movement backward.
(iii) Little room for use of iteration, which can reduce manageability if used.
(iv) Depends upon early identification and specification of requirements, yet users may not
be able to clearly define what they need early in the project.
(v) Requirement inconsistencies, missing system components and unexpected development
needs are often discovered during design and coding.
(vi) Problems are often not discovered until system testing.
(vii) System performance cannot be tested until the system is almost fully coded, and under
capacity may be difficult to correct.
(viii) Difficult to respond to changes. Changes that occur later in the life cycle are more costly
and are thus discouraged.
(ix) Produces excessive documentation and keeping it updated as the project progresses is
time-consuming.
(x) Written specifications ate often difficult for users to read and thoroughly appreciate.
(xi) Promotes the gap between users and developers with clear vision of responsibility.
2.3.2 The Prototyping Model: The traditional approach sometimes may take years to
analyze, design and implement a system. In order to avoid such delays, organizations are
increasingly using prototyping techniques to develop smaller systems such as DSS, MIS and
Expert systems. The goal of prototyping approach is to develop a small or pilot version called a
prototype of part or all of a system. A prototype is a usable system or system component that is
built quickly and at a lesser cost, and with the intention of being modifying or replacing it by a
full-scale and fully operational system. As users work with the prototype, they make suggestions
about the ways to improve it. These suggestions are then incorporated into another prototype,
which is also used and evaluated and so on. Finally, when a prototype is developed that satisfies
all user requirements, either it is refined and turned into the final system or it is scrapped. If it is
scrapped, the knowledge gained from building the prototype is used to develop the real system.
© The Institute of Chartered Accountants of India
System Development Life Cycle Methodology
2.7
Framework type : Iterative.
Basic Principles : Prototyping can be viewed as a series of four steps, depicted in Fig. 2.3.2
wherein Implementation and Maintenance phases take place once the prototype model is
tested and found to be meet uses’ requirements.
Step 1 – Identify Information System Requirements : In traditional approach, the system
requirements have to be identified before the development process starts. However, under
prototype approach, the design team needs only fundamental system requirements to build
the initial prototype, the process of determining them can be less formal and time-consuming
than when performing traditional systems analysis.
Step 2 – Develop the Initial Prototype : In this step, the designers create an initial base model
and give little or no consideration to internal controls, but instead emphasize such system
characteristics such as simplicity, flexibility, and ease of use. These characteristics enable users to
interact with tentative versions of data entry display screens, menus, input prompts, and source
documents. The users also need to be able to respond to system prompts, make inquiries of the
information system, judge response times of the system, and issue commands.
Step 3 – Test and Revise : After finishing the initial prototype, the designers first demonstrate the
model to users and then give it to them to experiment and ask users to record their likes and
dislikes about the system and recommend changes. Using this feedback, the design team modifies
the prototype as necessary and then resubmits the revised model to system users for reevaluation.
Thus iterative process of modification and reevaluation continues until the users are satisfied.
Step 4 – Obtain User Signoff of the Approved Prototype : At the end of Step 3, users
formally approve the final version of the prototype, which commits them to the current design
and establishes a contractual obligation about what the system will, and will not, do or provide.
Prototyping is not commonly used for developing traditional applications such as accounts
receivable, accounts payable, payroll, or inventory management, where the inputs,
processing, and outputs are well known and clearly defined.
Requirements Definition
Initial Investigation
Strengths
(i)
Coding, Testing
Implementation
Maintenance
System Design
Fig. 2.3.2 : Prototyping Model
Improves both user participation in system development and communication among
project stakeholders.
© The Institute of Chartered Accountants of India
2.8
(ii)
Information Systems Control and Audit
Especially useful for resolving unclear objectives; developing and validating user
requirements; experimenting with or comparing various design solutions, or investigating
both performance and the human computer interface.
(iii) Potential exists for exploiting knowledge gained in an early iteration as later iterations are
developed.
(iv) Helps to easily identify confusing or difficult functions and missing functionality.
(v) May generate specifications for a production application.
(vi) Encourages innovation and flexible designs.
(vii) Provides quick implementation of an incomplete, but functional, application.
(viii) Prototyping requires intensive involvement by the system users. Therefore, it typically
results in a better definition of these users’ needs and requirements than does the
traditional systems development approach.
(ix) A very short time period (e.g., a week) is normally required to develop and start
experimenting with a prototype. This short time period allows …
Purchase answer to see full
attachment
You will get a plagiarism-free paper and you can get an originality report upon request.
All the personal information is confidential and we have 100% safe payment methods. We also guarantee good grades
Delivering a high-quality product at a reasonable price is not enough anymore.
That’s why we have developed 5 beneficial guarantees that will make your experience with our service enjoyable, easy, and safe.
You have to be 100% sure of the quality of your product to give a money-back guarantee. This describes us perfectly. Make sure that this guarantee is totally transparent.
Read moreEach paper is composed from scratch, according to your instructions. It is then checked by our plagiarism-detection software. There is no gap where plagiarism could squeeze in.
Read moreThanks to our free revisions, there is no way for you to be unsatisfied. We will work on your paper until you are completely happy with the result.
Read moreYour email is safe, as we store it according to international data protection rules. Your bank details are secure, as we use only reliable payment systems.
Read moreBy sending us your money, you buy the service we provide. Check out our terms and conditions if you prefer business talks to be laid out in official language.
Read more