Presentation is loading. Please wait.

Presentation is loading. Please wait.

CEN 4021 9 th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project Planning.

Similar presentations


Presentation on theme: "CEN 4021 9 th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project Planning."— Presentation transcript:

1 CEN 4021 9 th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi http://www.cs.fiu.edu/~sadjadi/ sadjadi@cs.fiu.edu Software Project Planning (POMA) Organizing

2 9 th LectureCEN 4021: Software Engineering II Acknowledgements  Dr. Onyeka Ezenwoye  Dr. Peter Clarke 2

3 9 th LectureCEN 4021: Software Engineering II Agenda  Software Project Planning (POMA) –Organizing  Human resources

4 9 th LectureCEN 4021: Software Engineering II Organization  Construct a software development, support, and service organization based on the project plan.  Activities include: –Acquiring various skilled individuals needed for the project. –Obtaining the tools to support the process and methodologies. –Creating a set of well-defined metrics to track and gauge the project.

5 9 th LectureCEN 4021: Software Engineering II Human Resources  Possible software organizational structures –Software development organization –Software support organization  Preparations to acquire human resources –Recruiting, hiring  Projects require –large number of people with range of skills. –Multiple teams with specialized skills (e.g., testing, installation).  Personnel hiring may be done in parallel with preparing organizational structure.  Organizing groups require understanding of project plan.

6 9 th LectureCEN 4021: Software Engineering II Project Management Database ManagementApplication DesignBuild/Packaging Tools SupportApplication ManagementUser Interface Design Process and MeasurementApplications TestingRequirements Analysis System DesignSystems Testing Publication and Information Design Publication and Information Development Fig. 6.1 General Software Project Organization

7 9 th LectureCEN 4021: Software Engineering II Software Development Structures General software development organization. An implementation-independent general organization that includes all the major activities required to develop software artifacts, from inception to release. The specific implementation details such as relationships among activities, expected sourcing of the people, or the deployed organizational structure are added onto the general organization.

8 9 th LectureCEN 4021: Software Engineering II Software Development Structures Refining the General Organizational structure 1.Matrix 2.Hierarchical Orientation 3.Functional Orientation 4.Highly Specialized Organization

9 9 th LectureCEN 4021: Software Engineering II Matrix vs. Hierarchical Orientation  The software development structure is flexible based on the size of the project.  The organization structure may be represented either as a hierarchy or as a matrix. –Hierarchy org.: all the people associated with a project are grouped into functional departments that report directly within the vertical line of command of the organization – Matrix org.: people are grouped based on the functions they perform.  Functions may be performed by non-members of official project organization  Less function duplication, better focus on specialized skill.  What about team loyalty and confusion?

10 9 th LectureCEN 4021: Software Engineering II Refined Organizational Structure I: Functional Orientation  The general organizational structure may be further refined to show a more precise structure.  It is important that the org. be defined down to a level where each individual can see her/his name. Project Manager (Sally Thomas) Project Interface to process & tools (to be hired) Project interface to prog center. (Mark Burke) Apps. Designer (John Chang) Apps. Designer (Kim O’Conor) UI Designer (to be hired) Req. Analyst (Tom Shaker)

11 9 th LectureCEN 4021: Software Engineering II Refined Organizational Structure I: Functional Orientation  Many projects rely on this type of org. in which activities are dispersed but all the responsibilities are still put into the hand of a small group of people.  Not strictly hierarchical.  Such an org. tends to have more overhead, including several people engaged in activities indirect to the immediate project.  This org. requires a manager to spend more time conscientiously promoting rapid and effective communications.

12 9 th LectureCEN 4021: Software Engineering II Refined Organizational Structure II Highly Specialized Organization Software Development Manager (Sally Thomas) Apps. Engineer (to be hired) Apps Engineer (to be hired) Apps. Analyst (Tom Shaker) Senior Apps. software Engineer (Tom Shaker) Apps. Engineer (Laura Lang) Apps. Engineer (to be hired) Apps Engineer (to be hired) Senior Apps. software Engineer (to be hired) Software development specialization

13 9 th LectureCEN 4021: Software Engineering II Highly Specialized Organization  More specialized, that is the groups responsible for only the development of software, but not, for instance the information development and publication task.  Group does not perform any of the requirements gathering and specification activities, nor does it handle any independent testing.

14 9 th LectureCEN 4021: Software Engineering II Highly Specialized Organization  No project service activities, such as those dealing with processes, methodologies, measurements, configuration management, and tools, are the responsibility of this group.  The software development manager for this group still needs to ensure that the interfaces to the other departments within the same organization are well defined and operational.

15 9 th LectureCEN 4021: Software Engineering II Software Support Structures  After the release of the software there is still a need for support from the software development company.  A software support and service organization may share many characteristics of the general software project org..  software support and service: Post-software-release activities related to clarifying user questions and fixing software problems encountered by users.  Software support and service has one important component – customer management.

16 9 th LectureCEN 4021: Software Engineering II Software Support Structures  project manager must set up an extensive customer interface group, such as call service dept. that handles the following duties: –Answer calls –Analyze each problem –Respond to the customer if a possible solution exist –Generate a problem report when an immediate solution does not exist –Track problem resolution activities –Report and deliver solutions to the customer –Close problems

17 9 th LectureCEN 4021: Software Engineering II Software Support Structures  Customer management – The set of activities related to ensuring that the customers’ need are properly served.  A different set of skills and tools may be needed for a software support org. as opposed to the software development organization.

18 9 th LectureCEN 4021: Software Engineering II Software Support Organization Software Support Manager Problem resolution Analyst Customer level 2 support leader Customer level 3 support leader Customer Call support analyst Customer level 1 support leader Problem resolution Analyst Software support Engineer

19 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel  Once the organizational positions are outlined, the software project management needs to fill open positions.  The actual hiring of the employees starts with having a clear definition of the open position in terms of the skills, training, and character of the candidates required for each position. Recruiting:  It is usually not sufficient to provide a general description of the position title to the HR department.

20 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel Recruiting cont:  Following is are some examples of common software positions: 1.Database design and administration 2.Applications designer 3.Applications testing 4.Applications developer  The skills description for the Database design and administration is as follows:

21 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel Recruiting cont: –Database and administration: Technical skills include setting up a relational database, designing queries and reports to access information in the database, and administering backup and recovery processes for the database, which may require direct working experience with a specific database from the database vendor. Formal education includes a bachelor’s degree in computer science or information technology. Professional training includes a certification in the particular database and two or more years of work experience with that database. The candidate must posses good communication skills and enjoy detail-oriented work.

22 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel Recruiting cont:  Each position should have a description, whether it is open or not.  Each skill area may also be divided into levels characterized by different expectations and different degrees of reward and compensation.  There should be descriptions of the career paths, including the progression through the levels, for the various technical and supporting roles.

23 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel Recruiting cont:  The initial screening of the applicants may be performed by professional recruiters or by the personnel department.  project manager should prepare the recruiters of what is expected in the role i.e. go over the specific needs. Hiring:  The actual interview may take place in several stages.

24 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel Hiring cont:  The initial conversation may take place via telephone or via video conferencing.  The first interview is a two-sided information exchange intended to determine whether a mutual fit and interest exist.  The project manager should not try to “sell” the position.  project manager and members of the interview team should listen to the candidate and assess that person’s qualifications, specific skills and personal traits.

25 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel Hiring cont:  If open position has special requirements the project manager must ask the candidate about the special constraints that the person might have, related to issues such as the amount of travel required or the amount of potential overtime.  Potential questions may include the following topics: –General technical skills –Specific technical skills –General educational background

26 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel Hiring cont: –Years and types of experiences –The best and worst moments of past projects –Tasks that the person wants to do the most and the least and why –The person’s career goals –Any constraints, including absolute minimum salary –Why the person is leaving her/his current position –When the person is available –Description of the project –Description of the position

27 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel Hiring cont: –Description of the team –Description of the company and business and company culture –Description of the company benefits –Description of the compensation system  The interview does not necessarily follow the topics in this order.  Interview usually starts with a project manager giving a brief description of the project and the open position.

28 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel Hiring cont:  project manager should keep track of the topics as they are covered.  project manager should ask the candidate for the minimal salary or a range of salary, since the project might have a very tight budget.  Candidates might not only focus on the dollar value for compensation but also rewards related to job satisfaction, educational opportunity, or health benefits.

29 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel Hiring cont:  If the project manager decides to conduct a second round of interviews, then the candidate should be someone the project manager is willing to hire.  The second interview may include the candidate talking to other members of the team, other project managers and the interviewing manager’s immediate manager.  In the second interview there maybe a skills test in some programming language or tool.

30 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel Hiring cont:  If the parties are interested after the follow-up interview the project manager should provide the candidate with a target date for a formal decision and an offer.  The immediate offer is often made verbally for those companies that require drug or other substance clearances before final hiring.  The offer letter should contain: –Description of the position –Brief description of the tasks

31 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel Hiring cont: –The total compensation package, including a reference to any documents that explain the details Bringing people on board:  Once the candidate accepts the offer, the project manager needs to prepare for that person to be brought on board to the project as smoothly as possible.  Items needed to be prepared before the arrival of new employee: –Physical space and physical facilities, such as a desk and chair

32 9 th LectureCEN 4021: Software Engineering II Recruiting and Hiring Software Personnel Hiring cont: –Office supplies –Computing equipment –Communication facilities, such as a telephone numbers, user IDs, and passwords –Special software tools –Scheduling of special project education, if necessary –Printed or electronic documents on project processes, policies, methodologies, and other items relevant to the project  project manager need to prepare the other team members for the arrival of a new employee.


Download ppt "CEN 4021 9 th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project Planning."

Similar presentations


Ads by Google