Showing posts with label PineStem. Show all posts
Showing posts with label PineStem. Show all posts

Tuesday, 1 May 2018

Intelligent Project Management Software!

In the modern-day, we are able to collate so much data that it becomes even more important to analyze it and use it effectively. Where PineStem has the edge over most project management software on the market is its ability not only to help users organize and analyze, but to present them with insights which can help get the best out of their teams. It does this through machine learning in software project management.

Role assignment

An important daily task for project managers is assigning team members to various tasks. In some cases, this is anything but clear, without trawling through records of past jobs. This can be time-consuming, and what if the project manager has only just joined the team and doesn’t have prior knowledge of the personnel? That’s where PineStem comes in, weighing up a range of factors – including relevant past experience and bugs raised – before coming up with the right person for a particular job. This can be vital when it comes to effective bug cost identification and reduction.
With time, PineStem is able to build up a ‘performance map’ which charts the performance of a programmer via programmer efficiency calculation, allowing his or her record to be tracked and analyzed. It all adds up to higher code quality, better efficiency and more reliable role assignment.

Designed for Agile

Agile project management is proven to get results, if you are using this model then PineStem is the project management software for you. Using the process of ‘sprint and review’ is a good way of breaking up your projects, but unless you are on top of daily progress, you can still fall behind. PineStem is key to tracking sprint progress and incorporates past learning in order to examine sprint performance and let you know when a sprint might overshoot.
But it isn’t just the project itself which can be tracked, analyzed and improved. Thanks to the artificial intelligence in software project management, PineStem gets right to the core of the performance levels in each sprint, giving you the means to weigh up the current status of your project and make any necessary tweaks on a daily basis. That’s the best way to ensure that any potential issues are rectified before they become serious problems.
Demand more, with intelligent project management software. Stay on track with PineStem.
If you’d like to know more about it please do write to us at support@pinestem.com.

Friday, 2 February 2018

Project Management for New Product Development

New Product Development (NPD) for any organization is an exciting yet challenging task. While the prospect of new software product development opens the doors to future business development and an additional source of revenue, it also involves technical, marketing, and financial risks. Most of the decisions taken in this phase are with a degree of uncertainty and are therefore risky.
While some decisions can be reversed easily there are some, which when altered can cause huge cost overheads. New Product development is, therefore, a demanding exercise that needs effective project planning and control for informed decision-making.
The right Project Management Tool can help make this stage simpler. However, to make this stage less risky and more effective, the real requirement is an AI backed Project Management Tool (PMT).

New Product Development with an AI backed Project Management Tool

An AI backed PMT uses machine learning to fall back on past performance to take effective actions and make the right recommendations for any new product development.
This blog examines the efficacy of AI backed Project Management Tools to support the three essentials for any New Product Development to succeed. Which are,
  • Team Selection
  • Time Management
  • Quality management
The following section explains these in detail.

Team Selection

It’s better to have a great team than a team of greats! – Simon  Sinek
‘Choose wisely’ may be one of the best pieces of advice you are ever given while selecting a team. However,  like all good advice, the trick lies in how to put it into practice.
AI backed Project Management Tool (AI-PMT) offers a big aid in this process. They record and analyze a Programmer’s or Developer’s past performance. This stored repository of knowledge gives you critical insights for decision-making.

Evaluating Efficiency Calculation

One parameter that can help in team selection is calculating an employee’s efficiency in a particular skill or competency. This helps in better decision-making while putting a team together.
To cite an example, our Project Management Tool PineStem offers a feature called efficiency calculation. The calculation is based on the budgeted hours and the actual hours spent by an employee.
Let’s say we have a task for which the budgeted hours are 10 and the actual hours spent by employee ‘A’ are 7. His efficiency then for this particular task is 142.8%.  Let’s consider another employee ‘B’ who uses 15 hours to complete the same task. His efficiency would be 66%.
Clearly, employee A is ideal for the assigned task.
Apart from selecting between two employees, intelligent Project Management Tools also help in identifying the right skill or competency of an employee.
In the above examples, task 1 could be a task which requires Java competency and task 2 could be for Angular JS. In that case, the employee’s competency clearly is in Java.

Time Management

The second most important thing for new product development is time management. Time management includes planning and scheduling of detailed activities estimating their duration and aligning them together.
It also includes allocation of resources and a number of other matters. During the control phase of new product development, it is absolutely imperative to monitor the degree to which the work is completed to identify if it’s as per schedule. A Project Management Tool can effectively control this aspect and assist in keeping the project on track.
To use an example, our AI backed Project Management Tool PineStem sends warning messages to notify the completion of budgeted hours for a particular task. This kind of intervention by the Project Management Tool helps the project manager to take things under control and deploy corrective actions.

Quality Management

The third key aspect to ensure successful new product development is quality management. A bad piece of code can derail a project schedule and spoil customer experience. It is therefore critical that the project manager determines the components of quality assurance at the beginning of a project. These details help design critical quality gates throughout the project life cycle.
An important outcome of quality assurance is how to use the information gathered to improve processes in a way that will avoid failures of future tasks and other project work activities too. Here again, an intelligent Project Management Tool can help effectively.
To elaborate, few Project Management Tools offer bug tracking with detailed reporting on detecting the bug pattern. This information is useful to evaluate the nature of bugs that are being generated. Moreover, it helps eliminate repetitive bugs. This knowledge helps in all future projects including new product development and avoids redundant activities of cleaning the same bugs.

Conclusion

A Project Management Tool can help in many other aspects of the new product development. If you’d like to know more about it please do write to us at support@pinestem.com.
To experience the benefits of an AI backed Project Management Tool take a free trial with us at https://pinestem.com/
Website : http://osmosys.asia

Tuesday, 23 January 2018

Artificial Intelligence in Project Management

In our consulting work with clients across the globe, we’ve been asked umpteen number of times about the best practices in Project Management. At every level of the management hierarchy, individuals want to know the key practices for project success. What’s the best Project management mantra? The sure shot winning formula.
While a whole a lot can be said about effective project management practices and techniques, the one crucial aspect according to us is the project management tool in question. The fundamental question really is whether the project management tool is supporting the new age project manager.

The Times They Are A-Changin’

Remember one of the finest songs of Bob Dylan, The Times they are A-Changin’. Well, it perfectly fits today’s project management scenario.

The market today is absolutely volatile with innovation happening every second. Organizations are trying to deliver advanced futuristic projects. However, they are using the same old traditional project management tools. And here lies the fundamental paradox, one that we feel is impacting and hurting many organizations and that seems worthy of attention. The tools that project managers are using in a bid to drive growth, are fundamentally impeding their ability to grow.
To sustain growth, deliver results and outdo competition project managers need tools that give them the power for quicker adaptations, sound decision-making and rapid delivery at low operational costs. And here’s where the new age Artificial Intelligence (AI) based Project management tool fits the bill.
This blog explains how an AI backed Project management tool effectively assists a project manager.

Agile Project Management

The incremental development model and shorter release cycles of Agile helps in effective management and change. Shorter release cycle makes the system flexible, easy to change and less prone to errors. It also makes it easier to include any new changes, without majorly affecting the cost or timelines of the project. Moreover, all stakeholders of the project too, are involved in all iterations of the development. This inclusion at every step helps a great deal in maintaining transparency and visibility within the teams. A good project management tool helps you deliver the Agile Product.
Development principles. It focuses on the early delivery of business value, continuous improvement of the project’s product and processes, scope flexibility, team input, and delivering well-tested products that reflect customer needs.
In short, an Agile Project management tool lets you actually be agile. It upholds all agile processes and practices ensuring that your development is as per the Agile manifesto.

Intuitive and Intelligent System

A project manager has to make many decisions around many complex variables throughout the life of a project. To make this task simpler Artificial Intelligence and Machine Learning come to his rescue in AI backed Project Management Systems. Machine learning learns about a company, its systems, processes, and employees over the years, across different projects. It is, therefore, able to evaluate and provide the description of any decision from several views. Thus delivering a qualitatively new, more sophisticated understanding of an object being studied in comparison with any of unilateral description.
To cite an example of how machine learning can help, let us take a practical scenario. Usually, in the planning stage, associates tend to over-commit. There is a huge gap in the timelines of projected vis-a-vis actual. This can cause huge cost repercussions and jeopardize project schedules, budgets, and even customer relationships.
In such a scenario AI backed reports come to the rescue.
Project Management Tools that use Artificial intelligence learn over the years about different employees, their ability to do a task in a given time, their success and performance ratio.
This information further helps, schedule new projects with fairly realistic baselines. Team-planning, scheduling, and appraisals become more authentic with this information analyzed by the project management tool.

Effective Reporting Dashboards

Business dashboards are the window of business intelligence. Displaying data and analysis is an important part of the data science process.
It is imperative that today’s project management tools bring the capabilities of machine learning, data science and AI to accessible dashboards that everyone can understand.
Using intelligent and intuitive dashboards project managers can gather together the data, understand the important considerations and provide the right answers while planning, executing and delivering a project. Moreover, dashboards can also streamline activities and reduce inefficiencies.
Basically, effective dashboards can help take the blinders off from a manager giving deep insights into the actual problems and pain areas.
Well, above are some of the key requirements that are supported by AI backed management tools. There is lot more to these tools, which are a must for the new age project manager, to survive in today’s era of speed and innovation.
To know more about AI backed project management tool write to us today at support@pinestem.com and visit our website https://pinestem.com/ to know about our AI based Project management tool.

Thursday, 4 January 2018

Measuring Bug Cost in Software Development

The pace at which, the world turns over today demands a culture of change and innovation on a day-to-day basis. Innovation is the key to catch up, teamed with the ability to quickly respond to emerging threats. The time in which we need to respond however continues to decrease. From an information technology perspective, this suggests that we need to be able to make software changes more rapidly with quality than ever before. However, many programs devote more than 50 percent of the schedule to testing!
Not only does testing account for an increasingly large percentage of the time, it also utilizes a large proportion of the cost of any new software development. A recent study by Statista showed that percentage of IT spends from 2012 to 2019 has been increasing and quality assurance and testing will account for 26 percent of an organization’s budget! Both these numbers are way too high and restrictive for delivering a winning go-to-market time and winning a cost advantage.

Image: Proportion of budget allocated to quality assurance and testing as a percentage of IT spend from 2012 to 2019.

Let’s first identify, how this figure adds up? What is the cost of a bug? 

As per a study conducted by the Systems Sciences Institute at IBM,
The cost to fix an error found after product release was four to five times as much as one uncovered during design, and up to 100 times more than one identified in the maintenance phase.

So basically the bug cost is directly proportional to how far down the SDLC (Software Development Life Cycle) the bug is found.  The later you find, the more costlier it is! Moreover it gives rise to the ripple effect . One change to accommodate the code fix can in turn jeopardize other equations in the code.
So not only is the bug going to cost more to fix as it moves through a second round of SDLC, but a different code change could be delayed, which adds cost to that code change as well.
To cite an example, cost of a bug found in the initial phase of requirements gathering could be $10. If the product owner doesn’t find that bug until the QA testing phase, then the cost could be $150. If it’s not found until production, the cost could be $1000!
Given that testing is the key cost driver for software projects, and that it’s cost goes up with application size, it is pertinent for software companies to ensure that it is done well. While there are many different ways to adopt effective testing strategies,this blog focuses on how to use a project management tool to measure the cost of bugs and take corrective actions.

Using  Project Management tool to evaluate the Bug cost

Perhaps the most obvious place to find data that points to your team’s performance is your Project Management Tool. This is where tasks are defined and assigned, bugs are entered and commented on, and time is associated with estimates and real work. Essentially your Project management tool is a store house of a wealth of information that can help reduce costs.
An intelligent Project Management Tool can further help reduce testing costs and increase testing efficiencies while contributing to enhanced systems and software quality in terms of faster, broader, and more efficient defect detection.
Moreover many contemporary project management tools like PineStem offer measurement of what is produced, along with the measurement of the impact of the changes that are made to improve delivery.
Tools like PineStem are able to answer pressing questions like “Did this change improve the process?” and “Are we delivering better now?”

How is this done?

To cite an example, our Project Management Tool PineStem, has a very sophisticated performance-monitoring and tracking system which is used to manage tasks. Using PineStem a project manager can easily calculate the following numbers for a developer:
Total number of,
  • tasks he/she worked on
  • budgeted hours
  • hours spent by the employee
  • bugs assigned to the employee (assuming only one developer works on a given task)
Using these details the project manager can easily calculate the bugs per hour value.  From this value,  other numbers can be derived including cost per hour of the developer fixing it, and finally total cost of the bugs.
These data points offer a wealth of data for you to take corrective actions, adjust your processes, improve quality, measure teams and handle appraisals. Based on reports generated, you can evaluate individual employee’s performance and number of bugs created by the employee. This helps in taking corrective actions to ensure that it is not repeated in future projects
Thus recording and retrieving data from a Project Management Tool can help you with vital information that can be used to improve performance.
If you’d like to know more details on how to evaluate performance and how to calculate some key quality metrics, do write to us today at sales@pinestem.com.
To know more about PineStem visit https://pinestem.com/ You can also take a free trial for unlimited time.
References
  1. http://blog.celerity.com/the-true-cost-of-a-software-bug
  2. https://www.statista.com/statistics/500641/worldwide-qa-budget-allocation-as-percent-it-spend/

Thursday, 14 December 2017

Is Your Project Management Tool Learning on the Job?

You have probably heard a lot about big data. With the advent of the Internet, the explosion of electronic smart devices with superior computational power, almost every process in our world now uses some kind of software, to churn out huge amounts of data every minute.
It’s all around us now. We consume it in some way or the other, learn from it, apply it  or use it for performing some tasks. For example, think about social networks, information is stored about people, their interests, and their interactions. Think about process-control devices, ranging from smart cars to electric water pumps, which permanently leave logs of data about their performance. Even scientific research initiatives, such as the patient diary systems, which have to analyze huge amounts of data about our DNA.
There are many things you can do with this data: examine it, summarize it, and even visualize it in several beautiful ways. However, there’s another crucial use of this data: to make our systems more intelligent. This data can act as a source of solid experience and can help to improve any algorithms’ performance. These algorithms, which can learn from previous data, conform to the field of Machine Learning, a sub-field of Artificial Intelligence. Now imagine if you were to apply this solid inventory of intelligent data and experience to your PROJECT MANAGEMENT TOOL!
Project Management Experts and Professionals constantly face complex and critical decisions. There has been growing interest therefore in the use of artificial intelligence (AI) techniques to enhance the project management cycle. The most crucial task being optimizing decision making using artificial intelligence (AI).
From resource allocation to appraisals project management can greatly benefit with the use of AI.
In this blog let’s enumerate three crucial areas where AI can effectively improve Project Management, outlining how they are used to assist decision makers in tackling key problems.

Effective Resource Allocation in Project Management

AI is always learning on the job. It’s getting intelligent every passing day with the data you fill and the experience you record. This experience comes in handy while planning. So, let’s say if you have assigned an employee a period of 6 weeks to complete a task but his past turnaround time for similar type of task has been 4 weeks, you get a timely flash to reschedule the calendar.
Moreover, Project management tools with AI keep a complete record of your resources, their strength and weaknesses, performance records and ranking. With this powerful source of data, the intelligent system is capable in helping you select the best candidate for any job.
For example in our project management tool PineStem, this is achieved through a feature called Resource Recommendation. For a given task, the system recommends the most ideal candidate for the job, making your task simpler in assessing resources. This feature is available whenever you create or update a task.

Timely Warnings to the Project Manager

Time is money. If any project is off track or delayed it can cost a drain on your resources. Corrective actions can be taken if you are well prepared and monitoring the tasks. Project management tools with AI do this day to day, minute -to-minute tracking for you. Raising Red flags and altering you when things go off pace. PineStem our intelligent agile based project management tool uses Alert PM feature to alert project managers and helps them taking corrective actions.
Through Alert PM feature, the Project Manager can set warning thresholds to alert him of the hours spent in the project. Let’s say the budgeted number of hours for a project are 500 hours, the project manager can set a warning mechanism to alert him once 400 hours are billed in the project. On completion of 400 hours the project management tool will automatically send alert email to all the project managers. Thus, giving them ample time for corrections and revisions.

Bug Tracking and Bug Pattern Detection

Every software developer and IT professional understands the crucial importance of effective debugging. Often, debugging consumes most of a developer’s workday. That’s where the Effective Debugging Tools of Project management systems come to rescue. Bug tracking tools available in most project management tools including PineStem helps programmers accelerate their debugging journey, by systematically categorizing, and reporting the different bugs found within the system.
AI takes this debugging process to a still superior level with Bug Pattern Detection. For this AI draws on its experience, and expands the arsenal of debugging process, helping Project managers identify repetitive serial bugs, and identifying developers behind these serial bugs. This information helps a project manager take appropriate corrective actions like training the developers in that specific area. This information also helps in review meetings and performance appraisals.
AI backed debugging is therefore a lucrative option for organizations as it helps in getting the job done—more quickly, with less pain and with a considerable scope of future improvement.
Artificial Intelligence thus makes the project management tool deliver increased efficiency, cost saving and faster development and delivery. AI therefore is undoubtedly an imperative component for any project management tool in today’s smart market.
If you’d like to experience how you can benefit from using an intelligent machine learning backed Project Management tool take a free trial with us today at https://pinestem.com/ or visit us today at http://osmosys.asia/

Tuesday, 11 July 2017

Implementing routing in a SPA using AngularUI Router

Introduction

In this blog, we’ll give you a rundown of how we’ve implemented routing in our single page project management tool – PineStem.
Routing is a process of navigating the user to the desired location based on the action they perform.
Maintaining the user’s navigation history is a major challenge while developing a single page application(SPA).
To overcome this problem, we implemented a simple stack based solution which only involves pushing and popping an object with required properties.

Demo

You can find the sample code and a demonstration in the Plunker here – https://plnkr.co/OnBe1bc9Q7h1tYBK1pSY?p=info

Implementation

For PineStem, we’ve used a popular routing plugin named AngularUI Router.The idea behind our implementation is quite simple. We store the parameters that are required to navigate back to a particular state in an object and push it into an array.
AngularUI Router provides us an event called $stateChangeSuccess, which gets triggered on every successful state change. We store the information that is needed to navigate to that particular state on this event, which includes the stateParams, URL, a template that has to be loaded and name of the state. Whenever a user tries to go back by clicking on exit/cancel button or browser’s back button, we pop out the latest element in the array and use that for the state change. This way, we can maintain a stack to hold the user navigation history accurately.
A typical object that we store on each state change could be the one that is shown below –
Routing object
In PineStem, we have two ways of navigation. One is through the main window and another way is through the sidebar that is present on the left side.
Screenshot of the application is shown below.
PineStem
In order to identify the mode of user’s navigation, we used two flags –
  1. isFromNavBar  – It is set to true if the user navigates through the sidebar.
  2. isCancelOrSave  – It is set to true if the user navigates back through cancel/exit button in the main window.
Using the above-mentioned flags, we track user’s way of navigation and perform the necessary action.
  • When a user traverses through the main window, we maintain their navigation history by pushing the state information into the array.
  • If the user tries to navigate through the sidebar (isFromNavBar is true) then we clear the route history.
  • If the user clicks on the exit/cancel (isCancelOrSave is true) button of any entity, then we pop out the last element in the routeHistory and redirect user to the previously visited state. To know more about isCancelOrSave flag, please visit Handling back or exit button.

Logic breakdown

Let us see the actual logic in detail –
Following are the steps that take place when a user tries to navigate around three modules namely module_one, module_two, and module_three.
Step 1 – Assume an empty array. Eg: $routeHistory = [ ];
Step 2 – Now when the user tries to open module_one, there is no need to perform any action as this is their first step.
Step 3 – From module_one user opens module_two. Then we push an object (with details as discussed above) into the array. Thus, $routeHistory = [module_one_route]
Step 4 – Then, from module_two user tries to go to the module_three. Now, we will push the object related to module_two into the array. So, our array becomes
$routeHistory = [module_one_route, module_two_route]
Step 5 – Let’s say the user clicks on exit/browser’s back button in the module_three. Then we need to check the $routeHistory variable and if it is not empty, the latest entry is popped out. We use this object to render the last state.

Handling the back or exit button

We can find exit/cancel button in various sections of the application. On clicking this button, the user gets redirected to the previously visited state. As expected $stateChangeSuccess event triggers, and we save the last state visited by the user. Navigation by browser’s back button also triggers $stateChangeSuccess event.
Saving the state on the back/exit leads to a continuous loop.
Consider an example – Assume there are three pages named A, B, and C.
  1. User visits a page named page A. From page A, user visits page B, then from page B to page C. By now, the stack is filled with [pageA, pageB].
  2. Then, he/she tries to go back by clicking on the browser’s back button. As expected, they are redirected to page B using the latest entry of the stack.
  3. Along with the redirection, page C is saved on successful state change which makes the contents of the stack – [pageA, pageC].
  4. Then, if the user tries to click on the back button again expecting to be in page A, instead they will get redirected to page C. This happens because page C is the latest element in the stack.
The same is illustrated in the image below.
   Back button Loop Execution
In order to skip the saving of the last state, we set the flag isCancelOrSave to true. Whenever a user clicks on the exit/cancel button or the browser’s back button, isCancelOrSave state is set to true.
Then on the $stateChangeSuccess event, the following code snippet is executed.
Setting the isCancelOrSave manually when the user presses the back or exit button is simple enough, but doing so on the browser’s back button click needs another small snippet of code to be added in the $stateChangeSuccessevent.

Browser compatibility

The window.event property is available in Google Chrome and Edge only. So, the above-mentioned solution is applicable only for Chrome and Edge.

Different scenarios

Let us see a few scenarios that we handled using the above implementation.
Case 1
  1. User starts their navigation from the projects list module.
  2. Then opens a project.
  3. Next, to a task in the project.
  4. And then to the open bugs in that particular task.
  5. Finally, he/she goes to a bug.
  6. Reverses all the above steps by clicking on the exit/cancel button or browser’s back button to reach projects list again.
Above mentioned steps are illustrated through an image
Navigation via Back button
Case 2
  1. User starts their navigation from projects list.
  2. Then opens a project.
  3. From there he/she clicks on some task.
  4. Then, to the open bugs present on that task.
  5. They then click on the ‘Create new task’ link present in the sidebar.
  6. In the new task module, they press the exit button. Then, they will be redirected to the dashboard.
Navigation via Exit

Voice of the Customer (VOC) – Dynamics 365 CRM

Tags:   Dynamics 365   Dynamics CRM   feedback   survey   VOC   Voice of customer Introduction To Voice of the Customer For any bus...