NavalPlan Talk at LinuxTag 2011


Published on

NavalPlan is a project management tool that helps you to plan, monitor and control any kind of project.

Published in: Technology, Business
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

NavalPlan Talk at LinuxTag 2011

  1. 1. NavalPlan: Open Web Planning Diego Pino García LinuxTag 2011, 12th May
  2. 2. NavalPlan: Open Web Plannig 2 Contents indexSummary:– Introduction.– General overview.– Main features.– Technology.– Community.– Q & A.
  3. 3. NavalPlan: Open Web Planning 3Whats NavalPlan?
  4. 4. NavalPlan: Open Web Planning 4NavalPlan is a project management tool that helps you to plan, monitor and control any kind of project
  5. 5. NavalPlan: Open Web Planning 5●Commissioned by Xunta de Galicia (regionaladministration body).●Goal: provide the Galician shipyards a tool that couldhelp them to manage their production processes.●Scenario: Lots of open projects, interdependency ofresources between projects. Whats your status? Howcan you make the best of your resources?●The solution proposed was NavalPlan, a Gantt planningtool similar to MS Project, but that also helps you tomonitor and control the status of your company.● Developers: Igalia & Wireless Galicia.
  6. 6. NavalPlan: Open Web Planning 6Two key ideas: ●Web: Runs on the browser. Based on HTML/CSS/Javascript. No plugins required. ● Open: Free Software. AGPL.In the coming months NavalPlan will be renamed to LibrePlan.
  7. 7. NavalPlan: Open Web Planning 7General Overview
  8. 8. Main screens 8 Divided in 5 main screens:● Company view. Global view with all the scheduledprojects.● Project scheduling (Gantt view). Create dependencies,allocate resources, define progress, etc.● Project details (WBS, Work Breakdown Structure).Create projects, add tasks, decorate tasks with criteria,labels, progress, etc.● Resources load. Graph with load per resource(underused, fully loaded, overloaded).● Advance allocation. Fine-grained allocation for everytask.
  9. 9. Company view 9 Left-side menu:Main menu:Project scheduling (Gantt) • • Scheduling • Project details (WBS) • Resources • Resources load • Administration/Management • Reports Resources load View of all scheduled projects Theres overloading of resources among projects
  10. 10. Project Scheduling – Gantt view 10Menu: • Save • Zoom (year, month, week, etc) • Critical Path • Expand/collapse tasksGraphics: tasks Filter • • • ... Load • Earned value • Progress Gantt diagram List of tasks on the left Dependencies: S-S, E-E, E-S Constraints: ASAP, No later than, etc Task, Task groups, Milestones
  11. 11. Project Details - Work Breakdown Structure 11 WBS tab:Menu: • Add new tasks • Save • Structure in form of tree • Filter tasks • Tasks can be nested: task elements • Tabs: wbs, general data, progress, task groups and criteria, labels, etc • This structure will appear later in the Gantt view
  12. 12. Resources Load 12Shows load per resource: • Green: under 100% • Yellow: 100% • Red: above 100% (overloaded) Resource is overloaded Graph showing total capacity, Allocated to two tasks that happen simultaneously assigned load and overloading 100% loaded
  13. 13. Allocate hours to a resource manually or Advance allocation 13using a function: plain, polynomic, sigmoid Zoom level: year, month, week
  14. 14. NavalPlan: Open Web Planning 14Main Features
  15. 15. Main Features 15● Allocation of resources based on dynamic roles(criteria).● Powerful management of calendars.●Company view: projects and resources are notsomething isolated.● Resource balancing.● Monitor and control.● Integration with third-parties.
  16. 16. Dynamic roles 16●Roles: a need that a resource satisfies. For instance:Work category: plumber, programmer; Location: Madrid,Berlin.● Roles are dynamic. A person can stay half of the yearin Madrid and the other half in Berlin.●Tasks can expressed in terms of roles: “To complete thistask I need a plumber and a carpenter”.● Generic allocation vs specific allocation● Specific. A specific resource is allocated to a task.● Generic. Resources that satisfy roles are allocated toa task (1 plumber and 1 painter).
  17. 17. Dynamic roles – Basic use case 17● Project: Task 1: Fix bidet (Needs a plumber) Task 1.1: Unblock pipes Task 1.2: Repair handles● Resource: Joe (Role: plumber)●Tasks inherit roles from their parents. Task 1 (needs aplumber) => Task 1.1 and Task 1.2 (needs a plumber).● Devote 1 resource per day to Fix bidet. As Joe is the onlyplumber he will be completely devoted to this task(resource load 100%).
  18. 18. Powerful management of calendars 18● Calendars are highly customizable:–Derive calendars (Spain → Galicia).–Define number of working hours per day in a week.–Define exceptions (public holidays, holidays, etc).● Resources have calendars. Tasks have calendars.●Calendars play an important role when allocatingresources to a task.● Example:–Resource “Peter” has Spain calendar (16-20 May bank holidays).–Allocate “Peter” to task “Paint walls”.
  19. 19. Company view 19● A global view of the status of the company–Resources are shared among projects.–A resource can be overloaded due to another project (external overload).–Apartfrom detecting overload its possible to know what project is causingexternal overload (via Resource usage view).● Example:–A construction company which builds houses.–Projects overlap in time.–Joe and Peter are also employees there.
  20. 20. Resource balancing 20● NavalPlan is good at spoting overloading of resources.● Ways to solve overloading:● Manually (assign another resource, shift task soresource is no longer overloaded).● Global reassignment: ● Recalculate resource allocations. ● Useful when adding new resources.●Generic allocation: Distributes allocation among allworkers that have less hours.
  21. 21. Progress, costs control and integration 21● Progress:–Progress tracking (percentage, units, subcontracted)–Progress graphs (compared different types of progress)–Deviations and delay summary view.● Control of costs and reports:–Work reports: real imputed hours.–Cost associated to worker.● Integration:–Integration with third parties via web-services (RESTful API)–Integration with other NavalPlan instances.
  22. 22. Technology & Architecture 22● 3-tier application: UI, Business logic, Persistence.● UI: ZK 3.6.X & YUI. Plan to migrate to ZK5 CE soon.● Business logic: Java 1.6/Spring (MVC pattern).● Persistence: Hibernate. PostgreSQL & MySQLthroughly tested.● Web-services layer: Apache CXF.● Other technologies: Jasper Reports, Timeplot,JfreeChart, Jgraph.
  23. 23. Community 23● Completely developed in the open (wiki, git, mailing-lists, bugzilla, etc).●In the process of establishing an association forgoverning the project.●Association will be initially composed of representativesof public administration and current developingcompanies, but itll be open to everyone.●Training courses from user perspective and developingperspective.●Some public administration bodies and privatecompanies are joining.
  24. 24. Community 24● Website:● SourceForge:, mailing-lists)● Wiki:● Bugzilla:● IRC: freenode/#navalplan (6-8 people)● Social channels:●● Twitter:
  25. 25. NavalPlan: Open Web Planning 25Q&AThanks!