Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.

Slides:



Advertisements
Similar presentations
Basic SDLC Models.
Advertisements

Unified process(UP) UP is an OO system development methodology offered by Rational(Rational Rose) s/w, now a part of IBM Developed by Booach,Rambaugh,Jacobson--
Systems Development Environment
Object-Oriented Software Development CS 3331 Fall 2009.
SEP1 - 1 Introduction to Software Engineering Processes SWENET SEP1 Module Developed with support from the National Science Foundation.
Sharif University of Technology Session # 3.  Contents  Systems Analysis and Design Sharif University of Technology MIS (Management Information System),
Chapter 2 The Software Process
Quality management Vincent A Ssembatya.
Alternate Software Development Methodologies
©2006 OLC 1 Process Management: The Foundation for Achieving Organizational Excellence Process Management Implementation Worldwide.
Quality Management Awards and Framework ISO 9000: 2000 Malcolm Baldrige National Quality Award Deming Prize Six Sigma.
Software Life Cycles ECE 417/617: Elements of Software Engineering
Review Questions What is a systems development process? A system development process is a set of activities, methods, best practices, deliverables, and.
Planning a measurement program What is a metrics plan? A metrics plan must describe the who, what, where, when, how, and why of metrics. It begins with.
SE 450 Software Processes & Product Metrics 1 Quality Systems Frameworks.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Computer Engineering 203 R Smith Agile Development 1/ Agile Methods What are Agile Methods? – Extreme Programming is the best known example – SCRUM.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
1 Chapter 3 Project Organization, Selection, and Definition.
Iterative development and The Unified process
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Project Management Methodology More about Quality Control.
Chapter 16 Software Quality Assurance
1.Database plan 2.Information systems plan 3.Technology plan 4.Business strategy plan 5.Enterprise analysis Which of the following serves as a road map.
Principles of Object Technology Module 1: Principles of Modeling.
Chapter 3 – Agile Software Development 1Chapter 3 Agile software development.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 1 Applied Software.
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Object Oriented Analysis and Design Introduction.
OHT 23.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The benefits of use of standards The organizations involved in standards.
Introduction to ISO 9001:2000.
Understand Application Lifecycle Management
Agile Methodologies: Comparative Study and Future Direction 林佳蓁 資工 4B.
1 Chapter 5 Software Engineering Practice. 2 What is “Practice”? Practice is a broad array of concepts, principles, methods, and tools that you must consider.
Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and.
The Software Development Life Cycle. Software Development SDLC The Software Development Life-Cycle Sometimes called the program development lifecycle.
Roles in a Project Team By Sebastian Wagner And Michal Pieniazek.
University of Sunderland CIFM03Lecture 2 1 Quality Management of IT CIFM03 Lecture 2.
Models of Quality Assessment
June 05 David A. Gaitros Jean Muhammad Introduction to OOD and UML Dr. Jean Muhammad.
Rational Unified Process Fundamentals Module 5: Implementing RUP.
CMMI. 1.Initial - The software process is characterized as ad hoc, and occasionally even chaotic. Few processes are defined, and success depends on individual.
Chapter 4 프로세스 모델 Process Models
How to Complement ISO 9001:2000 with Six Sigma. ISO 9001:2000 introduces a strong focus on measurement, analysis and improvement. This section will discuss.
1 12/5/2015ã 2007, Spencer Rugaber Software Engineering Software engineering is concerned with the production of large scale software artifacts by teams.
The principles of an object oriented software development process Week 04 1.
XXX, Inc. 1 Technical Capabilities  Requirements Engineering  Analysis and Design  Implementation  Quality Assurance  Project Life Cycle  Requirements.
1 Lecture 12: Chapter 16 Software Quality Assurance Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman Slides.
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
UNIT 5.
Done By: Asila AL-harthi Fatma AL-shehhi Fakhriya AL-Omieri Safaa AL-Mahroqi.
1 Advanced Computer Programming Project Management: Basics Copyright © Texas Education Agency, 2013.
1 Process activities. 2 Software specification Software design and implementation Software validation Software evolution.
Systems Development Process and Methodologies Dr. T. Ravichandran.
Software Engineering cosc 4359 Spring 2017.
Software Development.
Software Quality Management
Software Engineering and Best Practices
Chapter 21 Software Quality Assurance
UNIT-6 SOFTWARE QUALITY ASSURANCE
Applied Software Implementation & Testing
Introduction to Software Engineering
Quality management standards
Telling Your SSIP Story
Chapter 21 Software Quality Assurance
Systems Analysis Overview.
Quality Management Lecture 9 1/2/2019.
Presentation transcript:

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software Project Management Process Improvement

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Life Without a Formal Process Many process improvement experts see the world as black and white.  They often feel that there are bad software teams without a formal process, and good teams that have one in place.  But the world is not that simple!

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Life Without a Formal Process Teams can be effective without a formal software process  Teams can consist of “jack-of-all-trades” programmers who understand the business of the organization.  “Skunk works” programmers may often take initiative and build useful software without input.  A highly capable development manager may be willing to put in an enormous effort.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Life Without a Formal Process An organization that produces software always has a software process  It’s just not formal, or documented and repeatable  And teams without a formal process can be happy and productive when they can point to their successes!  Except when their projects fail.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Life Without a Formal Process A team without a formal process does not scale up easily.  Programmers who used to produce lots of software find that their projects have started to feel “bogged down.”  This often happens when a small programming group with a good track record is faced with having to build a project on a larger scale.  It also happens when teams expand.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Life Without a Formal Process If there are no complaints about the way the team is building software, then there’s no reason to change!  However, few teams are really in this situation for long. Expanding the team is not the only place a formal process is useful.  It can also help in an organization where experts, users, or stakeholders are no longer readily available to the programmers.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Software Process Improvement Software process improvement is the art and science of changing an organization’s software process in order to build better software. Software process improvement always involves looking at the big picture.  This means writing down the entire software process as a whole and making sure that it is followed on each project.  It involves looking at entire projects and identifying areas that can be improved.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Frameworks and Methodologies Models and certifications that help assess the state of the organization’s process and serve as a framework for improving that process.  CMM, ISO 9000 and Six Sigma are frameworks There are also methodologies that an organization can adopt that describe the complete set of activities, roles, and work products needed to build software.  Rational Unified Process and Extreme Programming are methodologies.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Capability Maturity Model The CMM defines the characteristics of a mature, capable process in a way that can be measured and compared to processes at other organizations.  The CMM consists of areas of improvement, goals that must be met for each area, and specific practices to be implemented.  A software engineering process group within the organization identifies problems and inefficiencies and defines practices to address them.  Independent assessors verify that an organization is in compliance with CMM practices.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management ISO 9000 ISO 9000 is a family of quality management standards defined by the International Standards Organization. It is based on core principles:  Organizations must focus on their customers by understanding current and future customer needs.  Leaders within the organization must create and maintain an environment in which people can become involved and fulfill the organization’s objectives.  People at all levels are important to the organization.  Activities and resources are best managed as a process.  Organizations have many interrelated processes, which must be understood and managed as a system.  The organization should continually improve its performance.  Decisions should be well informed and based on real data and information.  An organization and its suppliers are in a mutually beneficial relationship.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Six Sigma Six Sigma is an approach to improving quality in manufacturing and business processes.  The Greek letter sigma refers to standard deviation—Six Sigma means “six standard deviations from the mean.” DMAIC is a five-phase approach to Six Sigma improvement  Define opportunities, Measure performance, Analyze opportunity, Improve performance, Control performance

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Extreme Programming XP consists of a set of rules and practices that govern all areas of software development: planning, designing, coding, and testing.  The goal of XP is to lower the cost of change. To meet this goal, many XP practices are highly iterative.  XP is a disciplined and well-defined process.  By making the stakeholders part of the project team, XP addresses the problem of the hands-off customer.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Rational Unified Process RUP is a popular off-the-shelf process based on the idea of highly iterative development  One thing that makes RUP unique is that it is a product in addition to a process. RUP includes a disciplined approach to requirements management that is based on the idea of managing changes.  RUP incorporates software design using the Unified Modeling Language (UML), a visual modeling system for graphically representing the use cases, class model, object interactions, and components of the software. One core element of RUP is the continuous assessment of the quality of the system.