Introduction to SPM lec 1

Views:
 
     
 

Presentation Description

No description available.

Comments

Presentation Transcript

Introduction to Software Project ManagementLec-01Recommended Book: Software Project Management by E.M Bennetan : 

Introduction to Software Project ManagementLec-01Recommended Book: Software Project Management by E.M Bennetan

Marks Distribution : 

Marks Distribution Total Assignment--------------04 Total Test-----------------------03 Presentation--------------------01 Quiz-----------------------------01 Survey as Project Internal Marks-----------------------40 Theory Marks---------------------60 Course Outline

Agenda : 

Agenda Define Project Define Management Define Project Management Define Software Project Management Role of Management in Software Development Measuring Software Organization

What is a Project? : 

What is a Project? A project is an activity with specific goals which takes place over a finite period of time. “A temporary organization that is needed to produce a unique and pre-defined outcome or result at a pre-specified time using pre-determined resources” A project is a temporary attempt undertaken to create a unique product or service. Temporary means that every project has a definite beginning and a definite end. Unique means that the product or service is different in some distinguishing way from all other products or services. 4

What is Management? : 

What is Management? Basically, the management involves the following activities: Planning- deciding what is to be done Organizing- making arrangements Staffing- selecting the right people for the job Directing- giving instructions Monitoring- checking on progress Controlling- taking action to remedy hold-ups Innovating- coming up with new solutions Representing- Interact with users, etc. 5

What is Project Management? : 

What is Project Management? Project Management is the art of maximizing the probability that a project delivers its goals on Time, to Budget and at the required Quality. Project management is the application of knowledge, skills, tools, and techniques to project activities to meet project requirements. 6

What is Software Project Management? : 

What is Software Project Management? According to IEEE standard software project management can be defined as “the process of planning, organizing, staffing, monitoring controlling and leading a software project” 7

Examples of projects include: : 

Examples of projects include: Developing a new product or service. Effecting a change in structure, staffing, or style of an organization. Designing a new transportation vehicle. Developing or acquiring a new or modified information system. Constructing a building or facility. Building a water system for a community in a developing country. Running a campaign for political office. Implementing a new business procedure or process. 8

Four Project Dimensions : 

Four Project Dimensions Software project management is an umbrella activity within software engineering. Four P's have a considerable control on software project management- people, product, process, and project. The People must be organized into effective teams, motivated to do high-quality software work, and coordinated to achieve effective communication. The product requirements must be communicated from customer to developer, partitioned (decomposed) into their constituent parts, and positioned for work by the software team. The process must be adapted to the people and the problem. A common process framework is selected, an appropriate software engineering paradigm is applied, and a set of work tasks is chosen to get the job done. The project must be organized in a manner that enables the software team to succeed. 9

Role of Management in Software Development : 

Role of Management in Software Development 1) History: Software development history is full of cases where the level of resources were badly planned and estimated. Software development has long been perceived as a risky business. There are many cases of software projects exceeding their original budget by two, three or even four hundred percent. Due to which projects were abandoned after spending substantial funds. Future: An attempt has been made to standardize the software development process and to create strict development environment in which software projects are easier to estimate and control. As software development began to grow into an engineering discipline , new systematic development methodologies began to appear. The goal of these technologies was to make software development more successful.

Management Skill in SW Project Manager : 

Management Skill in SW Project Manager In order to be a good software project manager specific management skills are required from the initial stages in such areas Supervision and Control This includes the efficient management of development team members and requires Constant awareness of the real status of their work on project. Planning Planning is one of the most important management activities and Includes the preparation of good estimates, the maintenance of the development schedule and the efficient assignment of personnel. Customer Relations In some projects, contact with the customer is a major management activity. This Includes documenting the customer’s requirements, controlling changes required by the customer, handling the customers involvement in the development process, providing reports and organizing reviews and product demonstrations. Technical leadership Good technical leadership is usually a desirable quality in effective software management. This often requires the ability to provide guidance in the solution of technical problems that arise during project management. It does not necessarily mean the provision of the actual solution itself.

Measuring Software Organization : 

Measuring Software Organization The level of organization contributes to the success of software project. Software organizations can be measured in following ways Likelihood of success SEI Scale

Likelihood of success : 

Likelihood of success The improvement in one’s ability to produce successful software is represented by the improvement in the level of software development organization. The better a software organization, the greater the likelihood that it will produce good software. This means that organizations follow standards of software development will be successful. The skillful staff. E.g. Traffic signals.

Cont…… : 

Cont…… Major Project Management Error: Experience in One area not sufficient for the other area Project manager have not committing on cost and schedule before project have adequately defined. If requirement of the project are not met then adhering of budget and schedule meaningless. Customer not provide exact req: so Developer should collect info: Better to develop new system from scratch than to try to salvage a poorly developed system.

Software Engineering Institute Scale (SEI) : 

Software Engineering Institute Scale (SEI) In 1986 Carnegie Mellon University’s Software Engineering Institute (SEI) started working on five level scale for measuring what was initially referred to as software process maturity, and later as software capability maturity. The objective of the SEI’s Capability Maturity Model is to ‘help the organizations improve their software process’ through ‘the progression from an immature unrepeatable software process to a mature, well-managed software process’.

Immature Vs Mature Software Organization: : 

Immature Vs Mature Software Organization: Immature Software Organization: Software processes are generally informal by practitioners and their management during the course of project. It is not rigorously followed or enforced. It is reactionary and managers are usually focused on solving immediate crises. When hard deadlines are imposed, product functionality and quality are often compromised to meet the schedule.

Mature Software Organization : 

Mature Software Organization It possess an organization wide ability for managing software development and maintenance process. Software process is accurately communicated to both existing staff and to new employees, and work activities are carried out according to the planned process.

Slide 18: 

Maturity Level: The five levels that measure the path from immaturity to maturity are as follow: Initial: The software process is characterized as informal, and occasionally even disorder. Few processes are defined, and success depends on individual effort. Repeatable: Basic project management processes are established to track cost, schedules and functionality. Functionality includes SQA, software subcontract management, software tracking and oversight, planning and requirement management. The necessary process discipline is in place to repeat earlier successes on project with similar applications. Defined: The defined process for both the management and engineering activities are documented, standardized and integrated into standard software process for the organization. It includes peer review, inter-group coordination, software product engineering, integrated software management, training program, organization process definition, organization process focus.

Cont… : 

Cont… Managed: Detailed measures of the software process and product quality are collected understood and controlled quantitatively. This include SQM, and quality process management. Optimized: Continuous process improvement is enabled by the quantitative feedback from the process and piloting innovative ideas and technologies. It includes process change management, technology change management, defect prevention. Survey in 1990 80 & 90% software development organizations were at level 1. 6 to 12 percent were at level 2.

Questions : 

Questions What is survey? Its type. Select an area for survey as project