F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 1 of 1 2
PROJECT MANAGEMENT APPROACH
Confidential Focal3 Softw are Pvt Ltd
PROJECT MANAGEMENT APPROACH Confidential Focal3 Softw are Pvt Ltd - - PDF document
F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 1 of 1 2 PROJECT MANAGEMENT APPROACH Confidential Focal3 Softw are Pvt Ltd F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 2 of 1 2 Introduction All projects are classified into a category based on the amount of work effort
F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 1 of 1 2
Confidential Focal3 Softw are Pvt Ltd
F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 2 of 1 2
Introduction
All projects are classified into a category based on the amount of work effort and
doesn't fit all when it comes to managing projects. The amount of documentation and required project management activities must scale to the size of the project. Size is basically determined based on work effort, represented by the estimated number of person-hours/ man days required to complete the work and the budget for staff resources, both internal and external to the organization. Risks Although work effort and staff budget are good indicators for the amount of project management that should be expended, certain factors can also bring about the need for the application of more robust project management practices. There are mainly five risk factors that have to be evaluated once the initial classification level is
complexity and the impact/ profile
Life Cycle Models
Each phase produces deliverables required by the next phase in the life cycle. Requirements are translated into design. Code is produced during implementation that is driven by the design. Testing verifies the deliverable of the implementation phase against requirements.
Requirements
Business requirements are gathered in this phase. This phase is the main focus of the project managers and stakeholders. Meetings with managers, stakeholders and users are held in order to determine the requirements. Who is going to use the system? How will they use the system? What data should be input into the system? What data should be output by the system? These are general questions that get answered during a requirements gathering phase. This produces a nice big list of functionality that the system should provide, which describes functions the system should perform, business logic that processes data, what data is stored and used by the system, and how the user interface should work. The overall result is the system as a whole and how it performs, not how it is actually going to do it.
Design
The software system design is produced from the results of the requirements phase. Architects have the ball in their court during this phase and this is the phase in which their focus lies. This is where the details on how the system will work is produced. Architecture, including hardware and software, communication, software design (UML is produced here) are all part of the deliverables of a design phase. Confidential Focal3 Softw are Pvt Ltd
F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 3 of 1 2
Implementation
Code is produced from the deliverables of the design phase during implementation, and this is the longest phase of the software development life cycle. For a developer, this is the main focus of the life cycle because this is where the code is
Many tools exists (CASE tools) to actually automate the production of code using information gathered and produced during the design phase.
Testing
During testing, the implementation is tested against the requirements to make sure that the product is actually solving the needs addressed and gathered during the requirements phase. Unit tests and system/ acceptance tests are done during this
Project management at Focal3
Project management is concerned with the overall planning and co-ordination of a project from inception to completion aimed at meeting the client's requirements and ensuring completion on time, within cost and to required quality standards. The component processes in project management can be placed into five process groups (initiating, planning, executing, controlling and closing) and nine knowledge areas (project integration management, project scope management, project time management, project cost management, project quality management, project human resource management, project communications management, project risk management and project procurement management). In the initial stage of the project itself, it will be necessary to classify the project by size: Confidential Focal3 Softw are Pvt Ltd
Project type Size (in man months) Lifecycle Small < 3 months Agile methodology Medium > 3months & < 6 months Water fall Model/ Agile Large > 6 months Incremental/ Spiral Model
F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 4 of 1 2
Waterfall Model
This is the most common and classic of life cycle models, also referred to as a linear- sequential life cycle model. It is very simple to understand and use. In a waterfall model, each phase must be completed in its entirety before the next phase can
I mentioned in the general model, phases do not overlap in a waterfall model. Advantages
deliverables and a review process.
Disadvantages
Confidential Focal3 Softw are Pvt Ltd
F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 5 of 1 2
Incremental Model
The incremental model is an intuitive approach to the waterfall model. Multiple development cycles take place here, making the life cycle a “multi-waterfall” cycle. Cycles are divided up into smaller, more easily managed iterations. Each iteration passes through the requirements, design, implementation and testing phases. A working version of software is produced during the first iteration, so you have working software early on during the software life cycle. Subsequent iterations build
Advantages
its iteration.
Disadvantages
requirements are gathered up front for the entire software life cycle. Confidential Focal3 Softw are Pvt Ltd
F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 6 of 1 2
Spiral Model
The spiral model is similar to the incremental model, with more emphases placed on risk analysis. The spiral model has four phases: Planning, Risk Analysis, Engineering and Evaluation. A software project repeatedly passes through these phases in iterations (called Spirals in this model). The baseline spiral, starting in the planning phase, requirements are gathered and risk is assessed. Each subsequent spiral builds on the baseline spiral.
alternate solutions.
project to date before the project continues to the next spiral.
radius of the spiral represents cost. Advantages
Disadvantages
Confidential Focal3 Softw are Pvt Ltd
F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 7 of 1 2
Agile Methodology
Major Agile m ethods are –
Of these, Focal3 practices processes such as Scrum , DSDM, FDD and XP, depending on specific project requirement and delivery schedules. Focal3’s eXtreme Programming approach is detailed below: Confidential Focal3 Softw are Pvt Ltd
F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 8 of 1 2
eXtreme Programming (XP)
Extreme Programming (XP) is an agile, adaptive software development methodology with a well-defined set of values and core practices. XP is defined by its 12 practices —The Planning Game, Small releases, Metaphor, Simple design, Refactoring, Test-First Development (Test Driven Development), Pair programming, Collective ownership, Continuous integration, 40-hour week, On-site customer, and Coding standards. XP is founded around small releases (approximately 6 months) with iterations of two weeks during which developers implement program features specified jointly by client and developer. Client collaboration is paramount to XP, where the client is involved in planning and regular feedback to produce software closely tailored to the users' needs. The emphasis on testing, such as client acceptance tests, Pair Programming, and Test Driven Development ( TDD) , result in production code of higher quality and more reliability. Pair Program m ing – Pair programming is one of the extreme programming models where 2 programmers working side-by-side, collaborating on the same design, algorithm, code or test. One programmer, the driver, has control of the keyboard/ mouse and actively implements the program. The other programmer, the
spelling, etc.) defects and also thinks strategically about the direction of the work. On demand, the two programmers can brainstorm any challenging problem. Because the two programmers periodically switch roles, they work together as equals to develop software.
Process
XP Lifecycle as practiced by Focal3 consists of six phases:
Please ref Figure 1 shown below – Confidential Focal3 Softw are Pvt Ltd
F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 9 of 1 2 Figure 1 Confidential Focal3 Softw are Pvt Ltd
F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 1 0 of 1 2
1) Exploration Phase
project
2) Planning Phase
3) I terations to release Phase
4 weeks
whole system
4) Productionizing Phase
Phase)
5) Maintenance Phase
6) Death Phase
respect
architecture, design or code is required Confidential Focal3 Softw are Pvt Ltd
F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 1 1 of 1 2
Roles and Responsibilities
testing tools
communicator, with the team as well as the client
Practices
XP practices followed by Focal3 have been derived from existing methodologies such as Use Cases, Spiral model and Modified Waterfall model. Our key practices are:
Close interaction between the client and the programmer Client estimates scope and release timings Developer estimates effort
At least, once every 2 to 3 months
Set of metaphors used by client and developers, and which define the system
Complexity and extra (slack) code removed
Unit tests are applied before the code and run continuously
Restructure by removing duplication, simplifying, and adding flexibility
Two people code at one work-station
Anyone can change code
New code units integrated to code-base as and when they are completed Thus system is integrated, built and tested many times a day
Multiple overtime weeks treated as a problem to be solved
Client to be available full-time for the project team
Coding standards are strictly adhered to Confidential Focal3 Softw are Pvt Ltd
Changes to team rules introduced only after adequate impact analysis
F3 _ Doc_ 0 0 2 _ Ver4 .0 Page 1 2 of 1 2
Scope of Use
XP is ideal -
members is possible Confidential Focal3 Softw are Pvt Ltd