Deck 00 Flashcards
Challenges in SW Project Management
- The requirements are unknown or hard to elicit from the user
- The requirements change frequently (volatile)
- New technology that effects the outcome appears during the project
- The end user cannot be identified
- The mobile end user is not able to evaluate
- visionary scenarios
- We cannot look the end user “over the shoulder”
- The development is distributed.
Additional Challenges in Global Software Project Management
- Coordination Challenges
- reduced communication bandwidth
- Increased latency
- Lack of organizational cohesion
- No informal communication
- Change Request Challenges
- Change requests mostly through formal channels
- Changes as ‘late surprises’
- Rationale for change request often unavailable.
Why is Project Management is a Problem Solving Activity
- Analysis: Understand the problem nature and break the problem into pieces
- Synthesis: Put the pieces together into a large structure that prepares for the solution
- Problem solving always happens in the context of methodologies
- Once a problem is solved it is often not hard anymore.
- Example: Columbus’ egg
- A metaphor for a brilliant idea or discovery that seems simple or easy after the fact.
- Example: Columbus’ egg
What is Polyas book?
First: understand the problem.
Second: devise a plan.
Third: carry out your plan.
Fourth: have to examine the solution obtained.
What tools and techniques are used in project management
- Methodologies: Collection of techniques, heuristics and tools unified by a philosophical approach
- Techniques: Formal procedures for producing results using some well-defined notation
- Heuristics: Informal collection of steps
- Tools: Instruments or automated systems that help in accomplishing a technique or supporting heuristics
- Specific project management problems occur
- When the available resources time, people and budget are limited
- When we allow the problem to change (or the problem changes, even if we don’t allow it J)
Project Management: Traditional Definition
Project Management is a collection of techniques, methodologies, tools and heuristics that support the
development of
a high quality software system with a given budget
before a given deadline.
Project Management: Definition used in POM
Project Management is a collection of techniques, methodologies, tools and heuristics that support the
development of
a high quality software system with a given budget
before a given deadline while change occurs
What is Change?
- Change is when something becomes clear (“it crystalizes”)
- Change is when something new appears (“technology enabler”)
- Change is when something becomes important (“change of requirements”)
- Change can happen fast, changes are often unexpected
- Manager must anticipate and react to unusual technology
- One strategy: Look at universities, R&D labs, what is done there will be out on the market soon.
- Hammer and Champy (Reengineering the Corporation, 1993): “Change is the only thing that is constant”.
Examples of Change in Software Projects
- Several jobs are combined
- Example: Case worker, a person who deals with the complete workflow of helping another person
- Processes have multiple versions to support multiple products
- Example: Product line requirements engineering
- Checks and controls are reduced
- Example: Developers have the power to make decisions
- Work is performed where it makes sense
- Outsourcing: A company subcontracts an activity such as product design or manufacturing to a third-party company
- Offshoring: A company transfers an organizational function to another country (regardless of whether the work is outsourced or stays within the same company).
Methodology Issues
- Methodology: Provides guidance, general principles and strategies for selecting methods and tools in a given project environment in the context of change
- The key questions for which methodologies typically provide guidance include:
- Customer: How much should the customer be involved? Should the team interact with the customer?
- Planning: How much planning should be done in advance?
- Reuse: How much of the design should result from reusing past solutions?
- Modeling: How much of the system should be modeled before it is coded?
- Process: In how much detail should the process be defined?
- Project Monitoring: How often should the work be controlled and monitored? When should the project goals be redefined?
Management vs. Project Management vs. Software Project Management
- Management: Getting a specific task done through people
- usually defined in terms of functions: Planning, organizing, directing, controlling and communicating are typical management functions
- Project management is defined in the context of a project
- tries to accomplish a specific task within a time frame and limited resources (given deadline and given budget)
- Software project management is defined in the context of software development
- Activities to develop a software system within a given time frame and with limited resources while change occurs: Planning, Requirements Elicitation, System Design, Reviews, Release Planning, …
The rules Scrum Master, Product Owner and Developer describe what kind of project?
Agile Project
What kind of project organization do we propose for the team exercise?
Project based organization