Download as pdf or txt
Download as pdf or txt
You are on page 1of 16

Software Project Management and Quality Assurance

Unit 2

Unit 2
Structure 2.0 2.1

Overview of Project Management

Introduction to Software Project Management Factors influencing Project Management Project Manager Project Management activities Stakeholders

2.2 2.3 2.4 2.5 2.6 2.7 2.8

Project Communication Project Development Phases Project Charter Statement of Work (SOW) Project Management Associations Summary Terminal Questions

2.0 Introduction
Project management is the discipline of organizing and managing resources in such a way that these resources deliver all the work required to complete a project within the defined scope, time, and cost constraints. A project is a temporary and one-time endeavor undertaken to create a unique product or service that brings about beneficial change or added value. This property of being a temporary and a one-time undertaking contrasts with processes, or operations, which are permanent or semi-permanent ongoing functional work to create the same product or service over and over again. The management of these two systems is often very different and requires varying technical skills and philosophy, hence requiring the development of project management.

Sikkim Manipal University

Page No. 15

Software Project Management and Quality Assurance

Unit 2

The first challenge of project management is ensuring that a project is delivered within the defined constraints. The second, more ambitious, challenge is the optimized allocation and integration of the inputs needed to meet those pre-defined objectives. The project, therefore, is a carefully selected set of activities chosen to use resources (money, people, materials, energy, space, provisions, communication, quality, risk, etc.) to meet the pre-defined objectives. There are many software engineers, involved in the development of software product. Their work must be coordinated and managed. It is a traditional engineering practice to define a project manager, responsible for the total project management. Large projects may compose of several subprojects, and each of which may be subdivided into further sub-projects, if necessary. Overall, the project manager has to ensure that the project is completed. Definitions Some of the professional bodies of software project management have defined the project management in the following way, PMBOK (Project Management Institute PMI) Project Management is the application of knowledge, skills, tools and techniques to project activities to meet the project requirements.

DIN 69901 (Deutsches Institute for Normung German organization for standardization) Project Management is the complete set of tasks, techniques, tools applied during project execution. This chapter discusses the issues of project management artifacts, stakeholders, project development process, project charter and work break down structure.
Sikkim Manipal University Page No. 16

Software Project Management and Quality Assurance

Unit 2

2.1 Factors influencing Project Management


Project management is often summarized in a triangle. The three most important factors are time, cost and scope. These form the vertices with quality as a central theme.

1. Projects must be delivered on time. 2. Projects must be within cost. 3. Projects must be within scope. 4. Projects must meet customer quality requirements. More recently, this has given way to a project management diamond, with time, cost, scope and quality, the four vertices and customer expectations as a central theme. No two customers' expectations are the same. So you must ask what their expectations are. 2.1.1 Project Manager Project Manager is overall responsible for the successful planning and execution of a project. This title is used in the construction industry, architecture, information technology and many different occupations that are based on production of a product or service. The project manager has many tasks: Planning
Sikkim Manipal University Page No. 17

Software Project Management and Quality Assurance

Unit 2

Staffing (acquiring human resource) Execution (putting the plan into action) Monitoring the progress of the project After the above tasks, the project managers in an organization are responsible for more than managing individual projects. Their responsibility spans the overall organizations life cycle. Managers continuously monitor and assess the capabilities of the organization. For those, managers follow CMM (Capability Maturity Model) model. CMM can also be used to assess software organizations as part of software acquisition policy and to qualify contractors by requiring them to be certified according to CMM maturity levels.
The CMM (Capability Maturity Model) for software is a framework that was developed by the Software Engineering Institute (SEI) at Carnegie Mellon University by observing the best practices in software and other organizations. CMM reflects the collective process experience and expectations of many companies. One objective of the CMM is to distinguish mature processes from immature, or ad hoc, processes. Immature software processes imply that projects are executed without many guidelines, and the outcome of a project depends largely on the capability of the team and the project leader. On the other hand, with mature processes, a project is executed by following defined processes. In this case, the outcome of the project is less dependent on people and more on the processes. It follows, then, that the more mature the processes, the more predictable the results and the more well controlled the projects. Hence, the CMM framework describes the key elements of software processes at different levels of maturity. Consequently, it also specifies the path that a software process follows while moving from immature processes to highly mature processes.

2.1.2 Project Management activities Project Management is composed of several different types of activities such as: 1. Planning the work or objectives: A manager must decide what objectives are to be achieved, what resources are required to achieve
Sikkim Manipal University Page No. 18

Software Project Management and Quality Assurance

Unit 2

the objectives, how and when the resources are to be acquired and how the objectives are achieved. 2. Assessing and controlling risk (or Risk Management): Risk is associated with several issues. It can be technical, methodology or financial one. Manager needs to plan from the starting of the project, to handle unexpected or sudden occurrence of risks. 3. Estimating resources: Resource estimation is another crucial task of the project manager. A resource can be software, hardware, human personnel, capital etc. Resource estimation involves the planning of required resources for the given tasks in the given period of time. Optimum utilization of these resources is the ultimate goal of the manager. 4. Allocation of resources and assigning tasks: This involves identification of task and allocation of required resources to fulfill the given task. For example, identification of skilled personnel to solve the given task. 5. Organizing the work: Organizing involves clear lines of authority and responsibility for groups of activities that achieve the goals of the enterprise. 6. Acquiring human resources (staffing): Staffing deals with hiring personnel, which involves recruiting, compensating, developing and promoting employees. 7. Directing activities: Directing involves leading subordinates. The goal of directing is to guide the subordinates and to understand and identify the organizational structure and goals of the enterprise. 8. Controlling project execution: Controlling consists of measuring and correcting activities to ensure that the goals are achieved. Controlling requires the measurement against plans and taking corrective action when development occurs.
Sikkim Manipal University Page No. 19

Software Project Management and Quality Assurance

Unit 2

9. Tracking and reporting progress: After assigning the tasks to the team members, it is essential to track and monitor the work progress. The work progress is documented at regular intervals. 10. Forecasting future trends in the project: The project must be designed to facilitate extensibility of new features in the forth coming days. This is very crucial task of manager or designer. Designers have to keep this point in mind, while designing architecture for the system. 11. Quality Management: Satisfying the customer requirements is called quality. Quality reflects in many ways. It can be through functionality, performance and external factors like portability etc. So the project manager needs to implement different quality management techniques from the analysis phase itself. 12. Issues solving: An issue can be a conflict among the team members, sudden increase in the attrition rate of employees, sudden drop in rupee value etc. Based on the issues, proper corrective action needs to be taken to ensure the smooth working of the system. 13. Defect prevention: A defect is a flaw in the system. It is more serious than an error. A defect occurs because of improper design, poor quality etc. A thorough testing is needed before and after implementation of the product, to avoid the defects. 14. Project Closure meet: Project closure describes the overall project details. The details can be conveyed through closure reports. Ex. Performance reports, testing reports and project completion reports.

Sikkim Manipal University

Page No. 20

Software Project Management and Quality Assurance

Unit 2

Controlling: Controlling consists of measuring and correcting activities to ensure that the goals are achieved. Controlling requires the measurement against plans and taking corrective action when development occurs. 2.1.3 Stakeholders Stakeholders are all those groups, units, individuals, or organizations, internal or external to our organization, which are impacted by, or can impact, the outcomes of the project. This includes the Project Team, Sponsors, Steering Committee, Customers, and Customer co-workers who will be affected by the change in customer work practices due to the new product or service. Self Assessment Questions I 1. Explain about project management triangle and project management diamond? 2. Explain any five project management activities?

2.2 Project Communication


There are many reasons that software projects get into trouble. The scale of many development efforts is large, leading to complexity, confusion, and significant difficulties in coordinating team members. Uncertainty is common, resulting in a continuing stream of changes that ratchets the project team. Interoperability has become a key characteristic of many systems. New software must communicate with existing software and conform to predefined constraints imposed by the system or product. To deal with them effectively, a software engineering team must establish effective methods for coordinating the people who do the work. To accomplish this, mechanisms for formal and informal communication among team members and between multiple teams must be established. Formal
Sikkim Manipal University Page No. 21

Software Project Management and Quality Assurance

Unit 2

communication is accomplished through writing, structured meetings, and other relatively non-interactive and impersonal communication channels. Informal communication is more personal. Members of a software team share ideas on an ad hoc basis, ask for help as problems arise, and interact with one another on a daily basis. Formal, impersonal approaches include software engineering documents and deliverables (including source code), technical memos, project milestones, schedules, and project control tools, change requests and related documentation, error tracking reports, and repository data. Formal, interpersonal procedures focus on quality assurance activities applied to software engineering work products. These include status review meetings and design and code inspections. Informal, information interpersonal dissemination procedures and problem include solving group and meetings collocation for of

requirements and development staff. Electronic communication encompasses electronic mail, electronic bulletin boards, and by extension, video based conferencing systems. Interpersonal networking includes informal discussions with team members and those outside the project who may have experience or insight that can assist team members.

Sikkim Manipal University

Page No. 22

Software Project Management and Quality Assurance

Unit 2

The following fig. 2.1 shows the parties involved during project work.

Fig. 2.1

2.3 Project Development Stages


Regardless of the methodology used, the project development process will have the same major stages: Initiation, Planning and design, project implementation and closing/maintenance. Initiation The initiation stage determines the nature and scope of the development. If this stage is not performed well, it is unlikely that the project will be successful in meeting the businesss needs. The key project control needed here is an understanding of the business environment and making sure that all necessary controls are incorporated into the project. Any deficiencies should be reported and a recommendation should be made to fix them.

Sikkim Manipal University

Page No. 23

Software Project Management and Quality Assurance

Unit 2

The initiation stage should include a cohesive plan that encompasses the following areas: Study analyzing the business needs in measurable goals. Review of the current operations. Conceptual design of the operation of the final product. Equipment requirement. Financial analysis of the costs and benefits including the budget. Select stake holders, including users, and support personnel for the project. Project charter including costs, tasks, deliverables, and schedule. This phase can also be called initiation phase, where in people have to identify the following, Information to be processed. Functions required. Performance required. System behavior should be determined No. of interfaces required should be estimated. This may be difficult to do. But tentatively allowed. Some times project can be dropped during at this phase. Planning and Design After the initiation stage, the system is designed. Occasionally, a small prototype of the final product is built and tested. Testing is generally performed by a combination of testers and end users, and can occur after the prototype is built or concurrently. Controls should be in place that ensures that the final product will meet the specifications of the project charter. The results of the design stage should include a product design that: Satisfies the project sponsor, end user, and business requirements.
Sikkim Manipal University Page No. 24

Software Project Management and Quality Assurance

Unit 2

Functions as it was intended. Can be produced within quality standards. Can be produced within time and budget constraints. During this phase the following issues are addressed, How design should be converted into code? Testing strategy should be planned Strategy for module integration. Architectural issues are evaluated Interfaces are characterized etc. Project Implementation Against the project plan and project organization structure defined in the previous stage, the project activities are executed, tracked and measured. The project implementation stage not only includes the completion of planned activities, but also the evaluation of the success, contribution of this effort, continual review and reflection of project status and outstanding issues against the original project business case. The implementation is basically concerned with the development of code and deploying the code. There should be synchronization between the code and design. Tools are available to synchronize both code and design. (Ex: UML Visual Paradigm, Rational Rose etc). Once implementation is over, proper testing is required. Testing can be unit testing, performance

testing, load testing, integration testing and system testing. Closing and Maintenance One of the key success criteria for continuous process improvement involves defining a formal process for ending a project. This includes evaluating the successful aspects of the project as well as identifying opportunities for improvement, identification of project "best practices" that can be leveraged in future projects, and evaluating the performance of
Sikkim Manipal University Page No. 25

Software Project Management and Quality Assurance

Unit 2

project team members. Closing includes the formal acceptance of the project and the ending thereof. Administrative activities include the archiving of the files and documenting lessons learned. Maintenance is an ongoing process, and it includes: Continuing support of end users Correction of errors Upgradation of software and hardware etc. Documentation preparation (user manuals).

2.4 Project Charter


The project charter is a one-time announcement. It clearly establishes the project manager's right to make decisions and lead the project. The intent of a project charter is to give notice of the new project and new project manager and to demonstrate the upper management support for the project and the project manager. It is also used by the sponsor to provide a broad direction for the project to the project manager. The charter should precede the other project documents as it establishes the project manager's authority which, in turn, is necessary to get the stakeholder agreements written. There are two ways most firms and organizations use the term project charter: 1. A project definition document 2. A formal recognition of authority The project charter establishes referent authority, i.e. the use of another person's authority, within the scope of the project. Audience of a Project Charter The charter should be made available to all project stakeholders everyone who may associate with the project, reaching as wide an audience as
Sikkim Manipal University Page No. 26

Software Project Management and Quality Assurance

Unit 2

possible. The charter is usually written by the sponsor or the project leader and should be approved by the sponsor, the customer, and the resource manager. Content of a Project Charter The charter outlines the direction and constraints of the project. The Scope Section of the Charter describes the project objectives, deliverables, customers, their needs and requirements, and project stakeholders. The Resources Section of the Charter names the project manager and other key project team members, the deadline, staff effort limit, budget, and other organizational constraints which the project must live within. In order for the team to make the best choices among the three main variables, the Resources Section describes also project priorities according to the ranks assigned by the sponsor to the scope, schedule, and cost. Scope Section Project Name Business Case Project Objectives Final Deliverable(s) Project Customers Customer Requirements quality characteristics Customer Needs Resources Section Team Assignments Name of the project manager and other key team members Deadline Staff Effort Limit Budget (or Spending Limit) Organizational Constraints Other than deadlines, staff effort, and budget
Sikkim Manipal University Page No. 27

Software Project Management and Quality Assurance

Unit 2

Project Priorities Ranking of scope, schedule, and cost Self Assessment Questions II 1. Explain the stages in project development? 2. Explain the contents of project charter?

2.5 Statement of Work (SOW)


Large and complex systems require that detailed work requirements need to be written containing "what is to be done" in definitive and precise language and terminology. The purpose of a SOW is to detail the work requirements for projects and programs that have deliverables and/or services performed. There are five types of SOW (one for each phase of the acquisition life cycle) during the system life cycle as identified by the Systems Engineering Management Plan (SEMP). The SOW covers the work requirements and in conjunction with applicable performance/design requirements contained in specifications used for contractual agreements. Any proposed supplier can submit a proposal based on his perception of the needs as defined by the SOW, thus enabling a fair price for goods and/or services to be provided.

2.6 Project Management Associations


Several national and professional associations exist which have, as their aim, the promotion and development of project management and the project management profession. The most prominent associations include: The Association for Project Management (UK) (APM) The Australian Institute of Project Management (AIPM) The International Project Management Association (IPMA) The Project Management Institute (PMI) The International Association of Project and Program Management (IAPPM)
Sikkim Manipal University Page No. 28

Software Project Management and Quality Assurance

Unit 2

A good project management discipline will not eliminate all risks, issues and surprises, but will provide standard processes and procedures to deal with them and help prevent the following: 1. Projects finishing late, exceeding budget or not meeting customer expectations. 2. Inconsistency between the processes and procedures used by projects managers, leading to some being favored more than others are 3. Successful projects, despite a lack of planning, achieved through high stress levels, goodwill and significant amounts of overtime 4. Project management seen as not adding value and as a waste of time and money 5. Unforeseen internal or external events impacting the project Project management is about creating an environment and conditions in which a defined goal or objective can be achieved in a controlled manner by a team of people.

2.7 Summary
This chapter discusses all essential ingredients about the project management and also gives you an overall idea about project management. This chapter described about role project manager and his responsibilities, project management activities, project charter and statement of work. This chapter builds foundation about Project Management. The project manager is concerned with over all plan, estimations and budgeting and implementation criteria about any project under development. He/she plays a key role in the software development. This chapter also described the purpose of a SOW (statement of work), which is essential document for software progress. SOW gives the detailed

Sikkim Manipal University

Page No. 29

Software Project Management and Quality Assurance

Unit 2

work requirements for projects and programs that have deliverables and/or services performed. This chapter also described about project management associations existed across world, like PMI, IPMI etc. The list of project management associations is given at the end of this chapter along with titles. These institutes conduct training programs across the world to impart the knowledge about project management.

2.8 Terminal Questions


1. What is project management? Explain various activities involved in project management. 2. Explain the role of project manager. 3. Who are stakeholders? Explain the role of each stakeholder. 4. Who are software players? Explain their role in detail. 5. Explain in detail about software project development stages.

Sikkim Manipal University

Page No. 30

You might also like