| Introduction | | | | would like to emphasize that a Software Project |
| A number of methods evolved in managing a | | | | Manager with experience in Programming would |
| Software Project during the past decade. | | | | be an added advantage during this crucial phase. |
| Whether it is a Traditional or Agile Development, | | | | In the below diagram, after the completion of |
| the emphasis on the phases of the Software | | | | gathering Requirements for Functionality 1 is |
| Development Life Cycle remain unchanged. While | | | | completed, the other tasks pertaining to that |
| the earlier Project Managers are inclined more to | | | | Functionality can be started. While the Team is |
| the principles of Managing the Projects, their | | | | working on these Tasks, the Requirements for |
| competencies in the technology that is being used | | | | the Next Functionality can begin. During this |
| in the Project are least bothered. The rapid | | | | planning phase, the Project Manager would be able |
| change in Technology and the Internet Boom | | | | to identify the Team Work Load and any possible |
| made the newer generation of Project Managers | | | | delays. All adjustments to workload breakdown |
| to be competent technically and experienced in | | | | between the Team Members must be finalized |
| Principles of Project Management(2) . Globalization | | | | during this Phase. To avoid panic due to any |
| and Outsourcing of IT Projects demanded | | | | unexpected risks (viz. Team Member leaving in |
| additional skills for managing these Projects. | | | | the middle of the Project or delay in Software |
| In this challenging IT World, creating a project plan | | | | Licensing or delay of acquiring the required |
| with cost-savings techniques and better metrics | | | | Hardware etc..) it is advisable to add at least 15% |
| for quality assurance became an ever-demanding | | | | to 20% of the planned time. Any extra time |
| task for the current Project Managers. | | | | during any phase will be an added advantage for |
| When the Software Project Manager is | | | | the Team to work for the next phase with less |
| well-versed in the business process and | | | | stress. |
| experienced in Software Development/Analysis, | | | | Critical Functionality Path (CFP) Evaluation: It can |
| then this author believes that the below explained | | | | be defined as the Path from Start to End where |
| "Functionality-Based SDLC" will be more successful | | | | more interdependent functionalities are involved. |
| when compared to the traditional SDLC. | | | | Any change in plan for any one of the |
| Major Functions Identification:For any application, | | | | functionality would have a major impact on the |
| the best way to identify the functions involved is | | | | next dependent Functionality. To avoid any such |
| to discuss more with the Business Community. | | | | mishaps, extra time must be included for each |
| The End-Users are the best resources for | | | | inter-related functions during the planning phase. |
| gathering the requirements and identifying the | | | | A Hypothetical Case Study - "Retail Pharmacy |
| tasks and grouping them into functions. In most | | | | Medicines Dispensing System (RPMDS) |
| of the Software Projects, it's the Project | | | | "In this hypothetical case study the project |
| Manager who decides how to plan the Project and | | | | manager is assumed to have experience in |
| get it executed. Theoretically, it works if the | | | | Software Development in HealthCare Industry. |
| Project Manager had any previous experience as | | | | The Project Manger identified the individual and |
| a Business Analyst or a Systems Analyst. | | | | interdependent Tasks. Based on the number of |
| Since most of the Projects are not started from | | | | Software Professionals assigned to the Project, |
| scratch, there is always the business process flow | | | | the Project is planned. |
| for most of the functionalities and their | | | | For this Application, various functionalities are |
| inter-dependencies already in place. The primary | | | | identified as follows: |
| task is to gather all the functionalities required to | | | | Individual Tasks: |
| be developed or enhanced based on the Project | | | | - IT1 - New Prescription Input |
| Scope. Organizing these functionalities at a higher | | | | - IT2 - Refill Prescription Input |
| level for presenting to the Business Community | | | | - IT3 - Fill the Medicine (Assumption is Made that |
| and Senior Management will provide a better | | | | HMO/PPO authorized ) |
| commitment to the Project Manager. This | | | | Interdependent Tasks: |
| Presentation would be the first step for the | | | | - DT1 - Gather Prescription Information - Depends |
| Business Sponsors and the Project Manager to | | | | on task IT2 |
| come to an agreement that all the functionalities | | | | - DT2 - Authorization from HMO/PPO - Depends |
| are within the Scope defined. Any | | | | on task IT1 and/or DT1 |
| miscommunication or misleading information MUST | | | | - DT3 - Print the Co-pay Amount - Depends on |
| be clarified at this stage. Most of the failed | | | | DT2 |
| Software Projects are due to lack of clarity in the | | | | - DT4 - Bill the Insurance - Depends on DT2 |
| Project Scope. | | | | Critical Functionality: DT2 - Authorization from |
| Digging through more in detail for each | | | | HMO/PPO |
| functionality with the Business Community and in | | | | In this Arrow Diagram, Function 4 can be started |
| particular with the responsible End-Users provides | | | | as soon as Function 1 is completed. By planning |
| a better understanding of how the Project should | | | | intelligently, by the tine Function 3 gets done, |
| be planned. During this Phase, the author expects | | | | Function 4 must be in its final finishing phase. |
| the Project Manager to be well-versed technically | | | | Since Function 5 is independent, it can be started |
| about the in-and-out of the Business Process. A | | | | with an assumption that the HMO/PPO authorized |
| Technical Leader might be a catalyst during this | | | | to fill the Medicines as per prescribed. |
| Phase. | | | | After completion of Function 4, Function 6 and 7 |
| Once the detailed functionalities are identified, they | | | | can be started in parallel. |
| can be further organized as Independent and | | | | In this Case, the CFP is: F2 -- F3 -- F4 -- F7 |
| Dependable Functionalities. Breaking down the | | | | At this point, the Project Manager can plan in two |
| functionalities to the lowest level possible at this | | | | ways: |
| phase will be more helpful while planning for the | | | | Plan 1: Divide the Project Team into exactly two |
| Work Allocation, Identifying the Team Size, | | | | groups and assign one group the Individual and the |
| Identifying the technical skills required. | | | | other the Interdependency Tasks. |
| Project Planning:The Functional Process Flow used | | | | Plan 2: Assign each task to each member of the |
| the Arrow Diagramming Method. The Forward | | | | team as mentioned in the Arrow Diagramming |
| Arrows indicate that the Next Functionality that | | | | Method. |
| need to be started once the existing one is | | | | What ever the Plan the Project Manager chooses, |
| finished. | | | | there is always a risk associated with it. The best |
| For each Functionality, the SDLC phase consists | | | | way to minimize the risk comes from the past |
| of: | | | | experience. |
| Fn Rn - Requirements Gathering (Where nis the | | | | Conclusion: |
| Functionality Number) | | | | This paper has dealt more in detail how to plan a |
| Fn Tn - Test Cases Preparation | | | | project if the functionalities are clear and their |
| Fn Dn - Detail Design Documentation | | | | inter-relationships are identifiable. For large scale |
| Fn Cn - Source Code Development | | | | projects the functionalities can be identified at a |
| Fn Un - Unit Testing | | | | higher level and for each functionality the same |
| Planning for each functionality relies on the time | | | | process can be repeated. The deeper the |
| taken to gather the requirements. Gathering all | | | | functionalities are broken-down for simplicity |
| requirements for Independent Functionalities | | | | purposes the higher chances of getting them |
| should be the first priority. While the Team is | | | | completed with minimum risk. Be cautious, too |
| busy in progressing other phases of Software | | | | deep might let you fall in an endless dark tunnel. |
| development for these Independent Functions, | | | | As emphasized earlier, a technically competent |
| the Project Leader/Manager will have sufficient | | | | & experienced Project Manager can decide |
| time to gather the requirements for functions | | | | the depth. |
| that are depend on each other. Once again, I | | | | |