31257 Information System Development Methodologies
1
Table of Contents
Information systems development ... 2
Information system development techniques and tools ... 3
Agile methods ... 5
Introduction to SCRUM ... 6
Introduction to extreme programming (XP) ... 9
Object oriented methodologies ... 11
Organisational and process oriented methodologies: SSM & STRADIS ... 13
Traditional structured development methodologies: RAD, SSADM & JSD ... 14
Evaluation of methodologies ... 16
PRINCE2 ... 17
ITIL ... 19
IMPORTANT NOTES ... 19
31257 Information System Development Methodologies
2
Information systems development
Lecture 1 -‐ Wednesday 23rd March
Definition
A group of interrelated components that work collectively to to carry out input, processing, output, storage and control actions in order to convert data into information products that can be used to support forecasting, planning, control, coordination, decision making and operational activities in an organisation.
Resources that support BIS 1. People
2. Hardware
3. Software – not only computer software, but procedures used by people such as instruction manuals and company policies 4. Communications – to transfer data such as networks and the hardware and software to support them
5. Data – data that an organisation has access to regardless of its form
Need for an information system
They are the solution to a problem that the organsation is facing.
-‐ Organisation is not performing as well as expected
-‐ New opportunities to perform more successfully
-‐ Respond quickly to opportunities and other changes in the business environment
-‐ Improve operational efficiency
Developing an information system
-‐ Develop a system for the organisation that will effectively meet user needs to become more productive and enhance decision
making
-‐ As an organisations reliance on an IS grows, so do the business-related consequences of IS success and failures
o Increase or decrease in revenue o Repair or damage to brand reputation o Prevention or incurring of liabilities o Increase or decrease in productivity
Elements of a system request
-‐ IS development project is identified when there is a business need
-‐ Project initiation begins with a system request: A document that describes the business reasons for building a system and
the value that the system is expected to provide
Project sponsor Person who initiates the project and serves as primary contact on the business side
Finance department members, IT managers, CEO, Head of marketing
Business need Business-related reasons for initiating the system
Increase sales, Improve customer service, Improve market share, decrease product defects
Business requirements
Business capabilities that the system will provide
Provide online access to information, Capture customer info, Include product search capabilities Business value Benefits that the system will create for the
organisation
3% increase in sales, 1% increase in market share,
$200,000 cost savings from decreased supply costs Special issues
or constraints
Issues that are relevant to the implementation of the system
Gov.-mandated deadline for may 30, System needed in time for the Christmas season, security SDLC
1. Planning - High level plan of the intended project; includes feasibility study and system investigation 2. Analysis - Analyse end-user business requirements; refine project goals into defined functions and operations
3. Design - Establishes descriptions of desired features and operations; include screen layouts, business rules, process diagrams, pseudocode
4. Development - Transforming detailed design documents into the actual system
5. Testing - Test to eliminate errors and bugs; verify the system meets all business requirements 6. Implementation - Place system into production so users can perform business operations 7. Maintenance - Perform changes, corrections, additions, upgrades
E.g. Waterfall method; V-Model (Verification - Validation Model); CMM (Capability Maturity Model)
31257 Information System Development Methodologies
3
CMM
Standardised framework to develop and refine an organisation's system development process. Consists of 5 levels of maturity.
Maturity level indicates level of process capability
1. Initial - System development projects follow no prescribed process
2. Repeatable - Project management processes and practices are established to track project costs, schedules and functionality 3. Defined - An organisation has developed its own standard system development process. The process is stable, predictable and
repeatable
4. Managed - Organisation monitors and controls its own processes
5. Optimised - The standardised processes are continuously monitored and improved based on measures and data analysis established in level 4. New processes are introduced to better serve the organisations needs.
Underlying principles for system development
-‐ Get the system users involved: Technical staff, users and management
-‐ Use a problem solving approach: Understand the problem, define requirements, identify solutions
-‐ Establish phases and activities: The number and scope of phases and activities vary from methodology to methodology and
business to business
-‐ Document throughout development: To promote good communication between changing stakeholders, documentation
would be a working by-product of the system development effort
-‐ Establish standards
-‐ Manage the process and projects: Process management ensures that the chosen process is used consistently
-‐ Design systems for growth and change: Needs and priorities of a business change overtime
Information system development techniques and tools
Lecture 2 – Wednesday 30th March
Managing IS development projects
-‐ Project deliverable: Any measurable, tangible, verifiable outcome, result or item that is produced to complete a project
-‐ Project milestone: A key date when certain activities must be performed
-‐ Project stakeholders: Individuals and organisations involved in the project or whose interests may be affected as a result of
project execution or project completion
-‐ Project sponsor: The person to provide financial resources
-‐ Framework: Coordination of activities associated with project
o Project: Temporary activities undertaken to create a unique product or service. E.g. software development project o Project management: Application of knowledge, skills, tools and techniques to meet project requirements o Project manager: Individual who is expert in project planning and management, defines, develops, tracks the
project plan
Main constraints 1. Scope 2. Time 3. Cost
(1) Choosing strategic projects
1. Focus on organizational goals à leads to higher success rate
2. Categorize business priorities à Could be categorized in terms of challenges or opportunities 3. Perform a financial analysis à RoI (Financial expectations for the project)
(2) Project planning
-‐ PERT chart (dependency, critical chart)
-‐ GANTT chart
(3) Implement an ISDM technique
Technique: A way of doing a particular activity in the development process, and any particular methodology may recommend techniques to carry out many of the activities
31257 Information System Development Methodologies
4
Rich picture
-‐ Allows the analyst to select viewpoints from which to develop system models
-‐ Explains what the organisation is about
-‐ Helps to explain the project to stakeholders such as inderfaces, boundaries, subsystems, organizational structure and goals
etc.
What do you achieve from rich pictures?
-‐ Identify primary tasks the organisation can perform
-‐ Identify stakeholder’s requirements
-‐ Find out what is really central to the problem situation
-‐ Identify issues
Process modelling – DFD
-‐ A formal way of representing how a business system operates. Focus is not on data, but on the processes/activities
performed.
-‐ Illustrates the processes/activities that are performed and how data moves among them
Elements of DFD
-‐ Process: Activity or function that is performed for some specific business reason
-‐ Data flow: Single piece of data or a logical collection of several pieces of information
-‐ Data store: Collection of data stored in some way, determined by the physical model
o Data flowing in updates (or is added to) the data store o Data flowing out is retrieved from the data store
-‐ External entity: Person, organisation or system external to the system, but interacts with it
Data modelling – ERD
-‐ Shows information that is created, stored and used by a business system
-‐ Can be read to discover individual pieces of information in a system and how they are organised and related to each other
Elements of ERD
-‐ Entity: Basic building block for a data model (table)
-‐ Attribute: Some type of information captured about an entity (rows)
-‐ Relationships: Associations between entities and they are shown by lines that connect entities together
-‐ Cardinality: Refers to the number of times instances in one entity can be related to instances in another (1:1, 1:M, M:M)
Prototypes
-‐ Preliminary working model of a larger system
-‐ Focused àAccomplishes single objective
-‐ Quick à Can be built and modified rapidly
-‐ Types à (1) Discovery: used to determine requirements to develop ideas and generally discarded after use)
(2) Evolving: Growing and live, eventually becomes system Process
Advantages Disadvantages
-‐ Encourages users participation
-‐ Helps resolves discrepancies among users
-‐ Helps determine technical feasibility
-‐ Quickly provides a system for the users to interact
with
-‐ Undergoes significant changes – many initial design
decisions become poor
-‐ People may believe final system will follow shortly
-‐ Gives no indication of performance under operational
conditions