0% found this document useful (0 votes)
13 views

ISB-Systems Development

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views

ISB-Systems Development

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 34

Information Systems

Systems Development
Topics
 Developing Enterprise Applications
 The Systems Development Life Cycle
 Software Development Methodology: Waterfall
 Agile Software Development Methodologies

 Project Management
 Using Project Management to Deliver Successful Projects
 Primary Project Planning Diagrams
 Outsourcing Projects
Systems Development and Organizational
Change (1 of 2)
 IT-enabled organizational change
 Automation
 Increases efficiency
 Replaces manual tasks
 Rationalization of procedures
 Streamlines standard operating procedures
 Often found in programs for making continuous quality improvements
 Total quality management (TQM)
 Six Sigma
Systems Development and Organizational Change (2
of 2)

 Business process redesign


 Analyze, simplify, and redesign business processes
 Reorganize workflow, combine steps, eliminate repetition
 Paradigm shifts
 Rethink nature of business
 Define new business model
 Change nature of organization
Organizational Change Carries Risks and
Rewards
Business Process Redesign
 Business process management (BPM)
 Variety of tools, methodologies to analyze, design, optimize
processes
 Used by firms to manage business process redesign
 Steps in BPM
1. Identify processes for change
2. Analyze existing processes
3. Design the new process
4. Implement the new process
5. Continuous measurement
As-is Business Process for Purchasing a Book from a
Physical Bookstore
Redesigned Process for Purchasing a Book Online
Tools for Business Process Management
 Identify and document existing processes
 Identify inefficiencies
 Create models of improved processes
 Capture and enforce business rules for performing, automating
processes
 Integrate existing systems to support process improvements
 Verify that new processes have improved
 Measure impact of process changes on key business performance
indicators
THE SYSTEMS DEVELOPMENT LIFE CYCLE
 Software that is built correctly can transform as the organization
and its business transforms
 Software that effectively meets employee needs will help an
organization become more productive and enhance decision
making
 Software that does not meet employee needs may have a
damaging effect on productivity and can even cause a business to
fail
THE SYSTEMS DEVELOPMENT LIFE CYCLE
 As organizations’ reliance on software
grows, so do the business-related consequences
of software successes and failures including:
 Conversion - The process of transferring information
from a legacy system to a new system
 Legacy system - An old system that is fast approaching or
beyond the end of its useful life within an organization
 Off-the-shelf application software - Supports general
business processes and does not require any specific
software customization to meet the organization’s needs
 Software customization - Modifies software to meet
specific user or business requirements
THE SYSTEMS DEVELOPMENT LIFE CYCLE
• Increase or decrease revenue
• Nike’s poorly designed SCM software delayed orders,
increased excess inventories, and caused third quarter
earnings to fall 24% below expectations
• Repair or damage to brand reputation
• H&R Block customers were furious when the company
accidentally posted passwords and social security numbers
to its Web site
• Prevent or incur liabilities
• FoxMeyer sued SAP for $500 million for an ERP failure
• Increase or decrease productivity
• Defective software accounts for 45% of computer
downtime and cost U.S. businesses $100 billion
THE SYSTEMS DEVELOPMENT LIFE CYCLE

 Systems
development life
cycle (SDLC) – The
overall process for
developing information
systems from planning
and analysis through
implementation and
maintenance
Activities of Systems Development Life Cycle (SDLC)ideas
• Brainstorm
• Set a plan
• Support
• System changes • Requirements
and support gathering
• Constraint analysis
• Integration • Client Sign-off
testing
• Technical
architecture
• System design
• Pseudocode

• User
documentation
• User training

• Test case writing • Build the technical


• Testing architecture
• Coding software
• Database development
THE SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC)

1. Planning phase – Establishes a high-level plan of the intended


project and determines project goals
2. Analysis phase – Involves analyzing end-user business
requirements and refining project goals into defined functions and
operations of the intended system
3. Design phase – Establishes descriptions of the desired features
and operations of the system including screen layouts, business
rules, process diagrams, pseudo code, and other documentation
Methods for gathering business requirements
THE SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC)
5. Development phase – Involves taking all of the detailed design
documents from the design phase and transforming them into the
actual system
6. Testing phase – Involves bringing all the project pieces together into
a special testing environment to eliminate errors and bugs, and verify
that the system meets all of the business requirements defined in the
analysis phase
7. Implementation phase – Involves placing the system into
production so users can begin to perform actual business operations
with it
THE SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC)
Sample
Test
Conditions
THE SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC)
THE SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC)
7. Maintenance phase – Involves performing changes,
corrections, additions, and upgrades to ensure the system
continues to meet its business goals
SOFTWARE DEVELOPMENT METHODOLOGIES
 There are a number of different software development
methodologies including
 Waterfall
 Agile
 Rapid application development (RAD)
 Extreme programming
 Rational unified process (RUP)
 Scrum
Some Issues:
Traditional Waterfall Methodology ■ Linear progression – changing
becomes very difficult
■ Inflexible and expensive
■ Managing costs is difficult
■ Expense of change increases at a
later stage
■ Not client friendly – changes
cannot incorporated
■ Low client involvement in the
software development
■ Client tests the final software at
the end
Agile Software Development Methodologies
■ An agile methodology aims for customer satisfaction through early and continuous
delivery of useful software components developed by an iterative process using
the bare minimum requirements.
 Short analysis-design-coding cycles
 Close user interaction
 Flexible team composition
 Reducing risk through early error
detection
 Requirements flexible
 Design changed based on customer
feedback
 Popular Agile methods
 Extreme programming
 Scrum
 Rapid Prototyping
RAPID APPLICATION DEVELOPMENT
METHODOLOGY (RAD)
 Rapid application development
methodology– Emphasizes extensive user
involvement in the rapid and evolutionary
construction of working prototypes of a system to
accelerate the systems development process
 Prototype – A smaller-scale representation or
working model of the users’ requirements or a
proposed design for an information system
 The prototype is an essential part of the analysis phase
when using a RAD methodology
EXTREME PROGRAMMING METHODOLOGY
 Extreme programming (XP) methodology – Breaks a
project into tiny phases, and developers cannot continue on
to the next phase until the first phase is complete
RATIONAL UNIFIED PROCESS (RUP)
METHODOLOGY
 Rational Unified Process
(RUP) – Provides a framework
for breaking down the
development of software into
four gates
 Gate One: Inception
 Gate Two: Elaboration
 Gate Three: Construction
 Gate Four: Transition
RATIONAL UNIFIED PROCESS (RUP)
METHODOLOGY
 Because RUP is an iterative methodology, the
user can reject the product and force the
developers to go back to gate one.
 Approximately 500,000 developers have used
RUP in software projects of varying sizes in the
20 years it’s been available, according to IBM.
 RUP helps developers avoid reinventing the
wheel and focuses on rapidly adding or
removing reusable chunks of processes
addressing common problems.
SCRUM METHODOLOGY
 SCRUM – Uses small teams
to produce small pieces of
deliverable software using
sprints, or 30-day intervals,
to achieve an appointed goal
 Under this methodology, each
day ends or begins with a
stand-up meeting to monitor
and control the development
effort
Principles behind the Agile Manifesto [1]
We follow these principles:
1. Our highest priority is to satisfy the customer through early and
continuous delivery of valuable software.
2. Welcome changing requirements, even late in development. Agile
processes harness change for the customer's competitive advantage.
3. Deliver working software frequently, from a couple of weeks to a
couple of months, with a preference to the shorter timescale.
4. Business people and developers must work together daily throughout
the project.
5. Build projects around motivated individuals. Give them the
environment and support they need, and trust them to get the job done.
Principles behind the Agile Manifesto [2]
6. The most efficient and effective method of conveying information to
and within a development team is face-to-face conversation.
7. Working software is the primary measure of progress.
8. Agile processes promote sustainable development. The sponsors,
developers, and users should be able to maintain a constant pace
indefinitely.
9. Continuous attention to technical excellence and good design
enhances agility.
10. Simplicity--the art of maximizing the amount of work not done--is
essential.
11. The best architectures, requirements, and designs emerge from self-
organizing teams.
12. At regular intervals, the team reflects on how to become more
effective, then tunes and adjusts its behavior accordingly.
 Scrum: How to do twice as much in half the time by Jeff Sutherland
 https://www.youtube.com/watch?v=s4thQcgLCqk
 https://www.youtube.com/watch?v=2L1oBLTICx4
 Agile Manifesto
 https://agilemanifesto.org/
 https://www.youtube.com/watch?v=AGdi3zZutXk
 https://www.youtube.com/watch?v=NMXc-r-m1K0
Issues with Agile
 The documentation is unclear – without proper tools
 Greater pressure on the developers on a daily basis
 Excessive changes during the development
 Communication and interaction with customer becomes critical
 Agreements with customers is often changed
 Experienced resources is critical
 Capacity Planning is difficult
 Advantages
 Greater control of developers
 End-user involvement
Thanks

You might also like