Welcome

Systems development and change - Sdlc and agile approaches

ResourcesSystems development and change - Sdlc and agile approaches

Learning Outcomes

After reading this article, you will be able to explain the purpose and main stages of the Systems Development Life Cycle (SDLC) and contrast it with agile approaches for systems change. You will recognise which development strategy is most suitable for different business situations, including key considerations for people, project risk, and controls. You will also identify critical success factors and typical issues encountered during systems implementation and change.

ACCA Business and Technology (BT) Syllabus

For ACCA Business and Technology (BT), you are required to understand how business information systems are developed and changed. Focus your revision on:

  • The stages, activities, and objectives of the Systems Development Life Cycle (SDLC)
  • Differences between traditional (waterfall) and agile development methods
  • Factors affecting the success and failure of systems development projects
  • Recognition and management of risks and controls in systems development and change
  • The roles of users, managers, and IT professionals during systems change
  • Impact of system change on the business, including staff considerations

Test Your Knowledge

Attempt these questions before reading this article. If you find some difficult or cannot remember the answers, remember to look more closely at that area during your revision.

  1. Name the four main stages of the Systems Development Life Cycle (SDLC).
  2. What is one key difference between SDLC and agile approaches?
  3. List two common risks when implementing a new business information system.
  4. In agile development, how are user requirements handled compared to the SDLC?
  5. True or false? Systems development projects usually fail due to technical reasons only.

Introduction

Organisations depend on information systems to support transactions, reporting, and decision-making. As technology, business processes, and requirements change, organisations must update or replace these systems. The process of introducing new systems or making significant changes must be carefully managed to reduce risk, ensure user acceptance, and realise expected benefits.

Two main approaches are used: the structured Systems Development Life Cycle (SDLC) and agile methodologies. Each has strengths and limitations depending on the scale of change, uncertainty of requirements, and organisational needs.

Key Term: Systems Development Life Cycle (SDLC)
An organised framework describing structured phases for developing and implementing an information system, from feasibility study to maintenance.

SDLC: The Traditional Approach

The SDLC is a linear and sequential process for developing systems, sometimes called the 'waterfall' approach. It typically includes clearly defined stages, each with specific objectives and deliverables.

Stages of the SDLC

  1. Feasibility Study and Planning
    Assess if the project is desirable, feasible, and viable. Involves high-level definition of goals, potential solutions, resource requirements, and initial risks.

  2. Systems Analysis
    Investigate current business processes, gather detailed requirements, and define what the new system must achieve. User input is critical.

  3. Systems Design
    Develop the technical and process specification for the solution. This includes defining how the requirements will be met using hardware, software, procedures, and controls.

  4. Systems Development (Implementation)
    Build/configure the system according to the design. Activities include software coding, data conversion, creation of procedures, and testing.

  5. Testing
    System is rigorously tested to check that it meets design specifications and business requirements. Key types: unit, interface, system, and user acceptance testing.

  6. Deployment and Conversion
    The system is installed, users are trained, and data is converted. May be done in phases or as a single 'big bang' switchover.

  7. Maintenance and Review
    Ongoing support, bug fixes, enhancements, and monitoring to ensure the system continues to perform as required.

Key Term: Waterfall Model
A strict, sequential SDLC approach where each stage must be completed before the next begins, with minimal overlap.

Advantages and Disadvantages of SDLC

AdvantagesDisadvantages
Clear structure and milestonesInflexible if requirements change
Careful documentationLong time before user sees results
Strong project controlUsers may be disengaged early
Thorough testing and controlsHigh failure rate if requirements unclear

Worked Example 1.1

A mid-sized retailer wants to replace its manual stock management with an automated system. Management knows exactly what reports it wants but says requirements won't change once defined. Should the SDLC approach be used, or an agile method? Why?

Answer:
The SDLC is suitable because requirements are clear and stable, allowing for structured planning, specification, and implementation.

Agile Approaches: An Alternative Method

Agile methods have gained popularity when requirements are unclear, or change frequently. Agile approaches focus on flexibility, close user-developer collaboration, and iterative delivery of working software.

Key Term: Agile Development
An approach to system development that delivers solutions incrementally through short cycles, encouraging user feedback and rapid adjustment to change.

Key Principles of Agile Methods

  • Projects divided into small, manageable increments called 'cycles' or 'sprints'
  • Requirements are prioritised and can change based on user feedback
  • Ongoing collaboration between users and developers
  • Frequent demonstrations of working solutions
  • Emphasis on simplicity, communication, and direct user involvement

Advantages and Disadvantages of Agile

AdvantagesDisadvantages
High flexibility and responsivenessNeeds frequent user involvement
Early delivery of useful featuresDocumentation may be lighter
Easily accommodates changing needsMay lead to scope creep if control is weak
Continuous user feedbackLess suitable for large, regulated systems

Worked Example 1.2

A start-up is developing a web application but expects requirements to change as they learn more about the market. Which approach—SDLC or agile—should they use? Explain.

Answer:
Agile is more appropriate because requirements are evolving. Short sprints and continuous feedback will allow for rapid response to market changes.

Roles Involved in Systems Development

Effective systems development requires clear roles:

  • Users: Define needs, provide feedback, test solutions
  • Managers: Approve resources, monitor progress
  • IT professionals: Analyse, design, build, and support technical solutions
  • Project manager: Plans, coordinates, and communicates between all parties

Failure in any role—such as low user engagement or weak management oversight—can increase the risk of project failure.

Key Term: User Acceptance Testing (UAT)
The final phase of testing where end users validate that the system meets their requirements and is ready for use.

Risk Factors and Controls

Systems development projects are inherently risky. Common risks include scope creep (uncontrolled changes), insufficient user buy-in, underestimated costs, technical failures, or poor change management.

Controls to reduce risk:

  • Clear documentation of requirements and changes
  • Project milestones and progress reviews
  • Segregation of duties (avoid conflicts of interest)
  • Testing against business needs, not just technical criteria
  • Strong training and support for users

Exam Warning

Projects often fail not due to technology, but because users are not involved or management has unrealistic expectations. Always highlight people and communication risks.

Critical Success Factors

To increase the likelihood of success:

  • Ensure user involvement from the outset
  • Gain consistent senior management support
  • Define measurable objectives and success criteria
  • Allow for adequate testing and user training
  • Plan for ongoing maintenance and support

Change Management and Implementation

System changes often fail if the impact on people and business processes is overlooked. Effective change management practices include:

  • Clear communication of purpose and benefits
  • Involving staff in system design and testing
  • Staged rollout to manage disruption
  • Training and support throughout and after implementation

Worked Example 1.3

A hospital introduces a new electronic health record system. Nurses are not properly trained, and communication is poor. What risks arise, and how can they be managed?

Answer:
Risks: User resistance, errors entering records, disruption of patient care.
Management: Provide timely training, ongoing support, and involve staff early to build ownership.

Comparison: SDLC vs. Agile

SDLC (Waterfall)Agile
RequirementsDefined upfrontEvolving
ProcessSequential stagesIterative cycles
User involvementHeavy at start/endContinuous
FlexibilityLowHigh
DocumentationComprehensiveFocused, lighter
TestingEnd of processThroughout each cycle

Summary

Systems development and change are essential for business progress but bring risk. The SDLC provides structure and control, suitable for stable projects. Agile methods suit situations where requirements change. Whatever the approach, user involvement, planning, control, good communication, and ongoing support are critical to success.

Key Point Checklist

This article has covered the following key knowledge points:

  • Define the stages and objectives of the SDLC and waterfall model
  • Explain key characteristics and processes of agile development
  • Compare advantages, disadvantages, and suitable contexts for each approach
  • Identify critical roles, risks, and controls for successful systems change
  • Summarise people and communication issues in systems development
  • Recognise the importance of user acceptance and change management during system implementation

Key Terms and Concepts

  • Systems Development Life Cycle (SDLC)
  • Waterfall Model
  • Agile Development
  • User Acceptance Testing (UAT)

Assistant

How can I help you?
Expliquer en français
Explicar en español
Объяснить на русском
شرح بالعربية
用中文解释
हिंदी में समझाएं
Give me a quick summary
Break this down step by step
What are the key points?
Study companion mode
Homework helper mode
Loyal friend mode
Academic mentor mode
Expliquer en français
Explicar en español
Объяснить на русском
شرح بالعربية
用中文解释
हिंदी में समझाएं
Give me a quick summary
Break this down step by step
What are the key points?
Study companion mode
Homework helper mode
Loyal friend mode
Academic mentor mode

Responses can be incorrect. Please double check.