IS3320 Developing and Using Management Information Systems Lecture 20: Project Management Rob Gleasure

Slides:



Advertisements
Similar presentations
Keith McMillan Principal, Adept Technologies Copyright (C) 2008, Adept Technologies llc.
Advertisements

Colin Weaver The Eleven Essential Behaviours of Successful Agile Project Teams.
Agile Software Development کاری از : مهدی هوشان استاد راهنما : استاد آدابی.
E X treme Programming & Agile Modeling Copyright © 2003 Patrick McDermott UC Berkeley Extension
A GILE SOFTWARE DEVELOPMENT : S ELF - ORGANIZING TEAM Egle Niitvägi TTU Health Care Technology.
PROC-1 3. Software Process. PROC-2 What’s a process? Set of activities in creating software It involves creativity –hard to automate –Requires human judgment.
Software Development Methodologies 1. A methodology is: A collection of procedures, techniques, principles, and tools that help developers build a computer.
3 Traditional Development Methods Of (SDLC) -Prototype -Waterfall -Agile Group9 Q2 Heng shujia 0823.
Slide Set to accompany Web Engineering: A Practitioner’s Approach
Agile Project Management with Scrum
Agile development By Sam Chamberlain. First a bit of history..
Anyone interested in this approach ? Over the past couple of years, I have developed PiVoT software to support the Agile development process. It emphasises.
Project Management – An Overview Project as a metaphor – a way to approach a series of activities Contexts – construction managementt, IT development,
Agile Architecture? Paul Lund 24 th Nov Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it.
Agile Methods.
Software Development Models: Waterfall and Spiral Sung Hee Park Department of Mathematics and Computer Science Virginia State University August 21, 2012.
Agile Project Management PMI Metrolina PDD Saturday September 27, 2014 UNCC Uptown Mike Ryan.
Does it work with Data Warehouses?. “We are uncovering better ways of developing software by doing it and helping others do it. Through this work we.
An Agile View of Process
Introduction to Agile.
Software engineering Process models Pavel Agejkin.
How Agile Are You? Larry Apke Agile Expert
Rally: One Writer’s Perspective. Background 28 years in technical communications including Symantec, Autodesk, and Cisco. Participated in Rally-based.
Dr. Tom WayCSC Software Processes CSC 4700 Software Engineering.
1 Agile Methodology & Programming Ric Holt July 2009.
Software Engineering Modern Approaches
Agile Programming Principles.
The Agile Primer July 2008 © ThoughtWorks 2008.
Agile Web Development C. Daniel Chase University of Colorado at Boulder.
Chapter 4 Agile Development
AgileCamp Presents: Agile 101. Good luck in your presentation! This slide deck has been shared by AgileCamp Kit under the Creative Commons Attribution.
Building a new HMS from scratch Bite size software delivery Richard Troote Alex Stephenson Head of ICT Head of Property Services.
Project Workflow. How do you do it? -Discussion-
Software Life Cycle Models. Waterfall Model  The Waterfall Model is the earliest method of structured system development.  The original waterfall model.
CS1: Classic Software Life Cycle “Waterfall” method: 1.Requirements/Analysis Determine the problem to be solved – client-centered 2.Specification.
AGILE COTS Václav Pergl We are uncovering better ways of developing software by doing it and helping others do it. Through this work.
1 11/21/2015 ã 2007, Spencer Rugaber Agile Manifesto February, 2001 XP, SCRUM, DSDM, Adaptive Software Development,
2  Examine effects of using agile methods for creating Internet products on customer satisfaction and firm performance  Agile methods are informal,
Why (or When) Agile Fails Creating high performance software delivery teams.
Jeff Briggs Senior Consultant Capstone Consulting.
IS2802 Introduction to Multimedia Applications for Business Lecture 10: Web Project Management Rob Gleasure
#AgileEd. Using Agile in the Classroom Cindy Royal, Associate Professor Texas State University slideshare.net/cindyroyal #AgileEd.
AGILE XP AND SCRUM © University of LiverpoolCOMP 319slide 1.
- Discussion of Chapter 1 in Martin and Martin.  We are uncovering better ways of developing software by doing it and helping others do it. Through this.
Chapter 3 Agile Development
Module 2: What is Agile? Why use it? TLO: Given a DoD program involved in software development, the student will recognize situations where applying agile.
Agile Introduction Emerson Murphy-Hill. Agile Manifesto/Alliance XP, SCRUM, DSDM, Adaptive Software Development, Crystal, FDD February 2001 (Snowbird,
Steve Lundquist, PMP, M.Sc..  As a PMP certified program manager, there are numerous tools, processes, methodologies, and tricks that are available to.
By: Isuru Abeysekera AGILE DEVELOPMENT. WHAT IS AGILE DEVELOPMENT? Broad term used to describe several methods for a development process Introduced in.
Industrial Software Development Process Bashar Ahmad RISC Software GmbH.
Transforming UX with Fluid UI Nick Goupinets Lead Developer, UTS McMaster University.
AGILE SOFTWARE DEVELOPMENT. Agile software development : Agile software development refers to a group of software development methodologies that promotes.
Baby Steps to Agility How to Grow Into Agile. A little about me A little about Agile Growing into Agile Questions Goals.
Rob Gleasure IS3320 Developing and Using Management Information Systems Lecture 16: Agile Project Management Rob.
AGILE METHODS Curtis Cook CS 569 Spring 2003.
Embedded Systems Software Engineering
Agile Project Management and the yin & yang of
Introduction to Agile Software Development
Principles for Agile Development
Rapid software development
Project Management and the Agile Manifesto
How to Successfully Implement an Agile Project
The Agile Manifesto is based on 12 principles
Adjective: Able to move quickly and easily. Principles and Values
Chapter 3: Agile Software Processes
Projects, Assignments, and other Assessments
Agile software development
Agile Development.
SD5953 Successful Project Management AGILE SOFTWARE DEVELOPMENT
Presentation transcript:

IS3320 Developing and Using Management Information Systems Lecture 20: Project Management Rob Gleasure

IS3320 Today’s lecture  The software development lifecycle  Waterfall approach  Agile approach  eXtreme Programming (XP)

The SDLC The SDLC describes the activities performed at each stage of a software development project. This involves six steps 1. Requirements Gathering and Analysis 2. Design 3. Development/Implementation 4. Testing 5. Implementation 6. Maintenance

Why use the SDLC It provides a standard generic framework that can be re-used and adjusted across multiple projects SDLC + project parameters  Plan Project parameters will include:  Scope,  Budget,  Duration This let’s us negotiate details with clients, spot problems early, regulate development, etc.

The Waterfall Approach The classic model of development is the waterfall model introduced by Royce in 1970 Each phase is completed before the next begins Idea of handover between phases, i.e. ‘waterfall’ Upstream changes may occur but only to address some emerging issues (you don’t aim for this to happen)

The Waterfall Approach Taken from

Outputs of the Waterfall Approach Taken from Technology Specialist at Cognizant Technology Solutions, R. Angelin

Agile Approach To combat the high failure rates and growing dissatisfaction with software development approaches, in 2001 the ‘Agile Manifesto’ was introduced Agility is argued as a philosophy, not just a set of practices  Adaptation is preferred to prediction  Iteration is preferred to linearity  Working code is preferred to documentation

The 12 Principles of Agility 1. Customer satisfaction by rapid delivery of useful software 2. Welcome changing requirements, even late in development 3. Working software is delivered frequently (weeks rather than months) 4. Close, daily cooperation between business people and developers 5. Projects are built around motivated individuals, who should be trusted 6. Face-to-face conversation is the best form of communication (co-location) 7. Working software is the principal measure of progress 8. Sustainable development, able to maintain a constant pace 9. Continuous attention to technical excellence and good design 10. Simplicity—the art of maximizing the amount of work not done—is essential 11. Self-organizing teams 12. Regular adaptation to changing circumstance s

Agility View of SDLC Taken from

Types of Agile Approach There are many different types of agile methodologies, e.g.  eXtreme Programming (XP)  Scrum  Dynamic Systems Development Method (DSDM)  Rational Unified Process (RUP) Of these, scrum and XP are arguably most common

eXtreme Programming (XP) Used successfully and routinely at companies like Bayerische Landesbank, Credit Swiss Life, DaimlerChrysler, First Union National Bank, Ford Motor Company and UBS. Built on core values of  Communication  Simplicity  Feedback  Courage  Respect

Planning in XP Business people decide about  Scope  Priority  Composition of releases  Date of releases Technical people decide about  Estimates  Consequences  Process  Detailed Scheduling

Planning in XP Daily standup meetings are used to manage this  15 minutes max  No sitting  Same time and place each day  Everyone quickly runs through what they did yesterday, what they will do today, and anything slowing them down

Designing, Coding, and Testing in XP Minimal design, especially early Single repository for code, everyone commits their code every day All code has unit tests More tests created as soon as a bug is found Code must pass all tests before it can be released

People in XP Seat together Whole team approach Informative workspace Energized Work Pair Programming Team Continuity

Advantages of Waterfall Simple way to negotiate tasks and milestones with various parties Provides structure Milestones are well understood Identifies issues early Good for management Lets quality or regulatory metrics be set in stone early on

Advantages of Agile Reflects iterative nature of exploratory development Ability to following changing requirements means more chance of useful output Does not require estimation of tasks that may are poorly understood Little administrative overhead Value realised early – client is almost guaranteed to get something…

When to Use Waterfall Requirements are well known and product is clearly defined Technology is mature New version of an existing product Migrating an existing product to a new platform Where implementation can’t be broken down

When to Use Agile Everything else… Even heavily regulated environments are adapting to use agile by following exploratory sprints with a ‘hardening sprint’

Want to read more? The Project Management Institute  Beck, K. (2004). Extreme Programming Explained: Embrace Change, Addison-Wesley The agile manifesto 