Software Engineering Project Management Presented by James

26 Slides113.50 KB

Software Engineering Project Management Presented by James Roberts EEL6883 Spring ‘07

Definitions Management – The activities and tasks undertaken by one or more persons for the purpose of planning and controlling the activities of other in order to achieve objectives that could not be achieved by the others acting alone

Definitions Project Management – A system of management procedures, practices, technologies, skills, and experience necessary to successfully manage an engineering project Software Engineering Project Management – Project management where the product is software

Universality of Management What does the Universality of Management mean? – Management performs the same functions regardless of organizational position or enterprise – Management functions are characteristic duties of all managers – Management practices, methods, activities and tasks are specific to the enterprise

Project vs. Aquisition Two types of software projects – – Development projects Acquisition projects Two types of software project managers – Project managers – Acquisition managers

More Definitions Software Development – The process of developing or modifying a software-intensive system to meet the acquirer’s contractual requirements – The process of developing this system to deliver on time and within budget Software Acquisition – The process of contractually obtaining, from a supplier, a software-intensive system for use by another groups or organization

Issues with Software Engineering 70% of software organization have no defined methods Process are defined during the development Software ends up – Late – Over budget – Fails to meet requirements

“today’s major problems with software development are not technical problems, but management problems”

Management Functions & Activities Functions of management – – – – – Planning Organizing Staffing Directing (leading) Controlling

Planning Activities Set objectives and goals Develop strategies Develop policies Forecast future situations Conduct a risk assessment Determine possible courses of action Make planning decisions Set procedures and rules Develop project plans Prepare budgets Document project plans

Organizing Activities Identify and group project function, activities, and tasks Select organizational structures Create organizational positions Define responsibilities and authority Establish position qualifications Document organizational decisions

Organizational Structure Conventional organization structure – Line organization – Staff organization Project organization structure – Functional – Project – Matrix Team Structure – – – Egoless Chief programmer Hierarchical

Organizing Activities Identify and group project function, activities, and tasks Select organizational structures Create organizational positions Define responsibilities and authority Establish position qualifications Document organizational decisions

Establish Position Qualifications Project managers Software system engineers Scientific/engineering programmers, programmer-analysts Verification and validation engineer Software quality assurance engineer

Organizing Activities Identify and group project function, activities, and tasks Select organizational structures Create organizational positions Define responsibilities and authority Establish position qualifications Document organizational decisions

Issues In Staffing Lack of project management training Greatly varying skills Inability to predict productivity of engineers Lack of experience Turnover Not enough software engineers – Most graduates are theoretical – Or just coders

Staffing Activities Fill organizational positions Assimilate newly assigned personnel Educate or train personnel Provide for general development Evaluate and appraise personnel Compensate Terminate assignments Document staffing decisions

Filling Positions Must look for – – – – – – – – Education Experience Training Motivation Commitment Self-motivation Group affinity Intelligence

Staffing Activities Fill organizational positions Assimilate newly assigned personnel Educate or train personnel Provide for general development Evaluate and appraise personnel Compensate Terminate assignments Document staffing decisions

Directing Activities Provide leadership Supervise personnel Delegate authority Motivate personnel Build teams Coordinate activities Facilitate communication Resolve conflicts Manage changes Document directing decisions

Providing Leadership Positional Power – Power derived from having a leadership position – Not always effective Personal Power – Charisma or personal charm – Sometimes more effective than positional power

Directing Activities Provide leadership Supervise personnel Delegate authority Motivate personnel Build teams Coordinate activities Facilitate communication Resolve conflicts Manage changes Document directing decisions

Job Motivations Job Attractors Job Dissatisfiers Salary Company mismanagement Chance to advance Poor work environment Work environment Little feeling of accomplishment Location Poor recognition Benefits Inadequate salary Facilities/equipment Little chance to advance Job satisfaction Poor facilities/equipment Company management Poor benefits Job responsibility Poor career path definition

Directing Activities Provide leadership Supervise personnel Delegate authority Motivate personnel Build teams Coordinate activities Facilitate communication Resolve conflicts Manage changes Document directing decisions

Controlling Activities Develop standards of performance Establish monitoring and reporting systems Measure and analyze results Initiate corrective actions Reward and discipline Document controlling methods

Thank You!

Back to top button