This page details our shared vision for product planning, prioritized features, and raw notes from brainstorming sessions

Shared Vision

Our Our Message now has it's own little home on the wiki. Please visit it!

Specific Product Priorities for 2011

Initiative

Release F (Q1 2011)

Release G (Q2 2011)

Release H (Q3 2011)

Release I

Ship faster

 

 

 

 

Accounting Integration

 

 

 

 

Data Migration

 

 

 

 

Business Intelligence

 

 

 

 

Deploy faster

 

 

 

 

Anticipated Next release - Currently in Elsie F

This release contains several important features and is close to feature complete. The majority of the product roadmap for 2011 will focus on releases after Elsie F.

Currently in BI 1.0

2011 Commitments - signed or have been communicated to our customers

Other Priorities in 2011

Current scheduled spikes

Technical Commitments

Ideas

Brainstorming notes

Session 2

Session 1:

Brainstorming ideas for product roadmap - Session 1

Uncategorized

Tighter/cleaner integration with Pentaho

Language support

Search

  1. Improve search to allow for realtime suggested search list. e.g. if user enters "my" suggested search dropdown appears with groups, clients, centers that start with "my"
  2. tree view of hierarchy so organization is more visible

Mifos as a service

Bulk Operations like Collection-sheet

User Data Collection from Cloud

Custom Login screen/dashboard

Speeding up development

Pluggable modules

Roles and Permissions

Flexible System?

Mobile client for realtime collections entry

www access for particular clients (to check their accounts' balance, repayment schedule, etc.)

Reduce cost of switching to mifos

Value the Domain more highly

We need to be sure we are building the right thing.

Lean Principles: Eliminate Waste

Building the Wrong Thing
"There is nothing so useless as doing efficiently that which should not be done at all." -Peter Drucker
Some extracts from foreword by Martin Fowler to 'Domain Driven Design'.

There are many things that make software development complex. But at the heart of this complexity is the essential intricacy of the problem domain itself. If you're trying to add automation to complicated human enterprise, then your software cannot dodge this complexity - all it can do is control it.

The key to controlling complexity is a good domain model, a model that goes beyond a surface vision of a domain by introducing an underlying structure, which gives the software developers the leverage they need. A good domain model can be incredibly valuable, buts its not something that's easy to make....

... Eric also cements many of the things that we've learned over the years. First, in domain modeling, you shouldn't separate the concepts from the implementation. An effective domain modeler can not only use a whiteboard with an accountant, but also write Java with a programmer. Partly this is true because you cannot build a useful conceptual model without considering implementation issues. But the primary reason why concepts and implementation belong together is this: The greatest value of a domain model is that it provides a ubiquitous language that ties domain experts and technologists together...

... domain models aren't first modeled and then implemented... really powerful domain models evolve over time, and even the most experienced modelers find that they gain their best ideas after the initial releases of a system.
So in summary I think we can achieve a better product and imagine better things to provide by:

  1. Understanding the domain of microfinance better
  2. Understanding our customers better and how they deliver value to their customers.
  3. Understanding Grameen better and how its delivers value to our customers.
    **how the various departments work together to reach organizational goals.

Mifos playground for domain and technology modeling

In our upcoming roadmap, we have alot of tech debt work and changing features 'removal of meeting requirements etc' to try and get us into a 'half reasonable state'. This can be quiet soul destroying; Imagine that all 'tech debt' is done and some of the features have being completed. We still remain with an architecture/design/model that is still not suitable to what we currently understand about the domain and where we need to go (think multi-tenancy, multi-currency, auditing, village-banking model/grameen model, teller-model etc)

I personally will probably want to create a 'mifos playground' completely off mifos where I can use knowledge gained from 'domain discussions' and model this knowledge whilst also taking into account 'technologies' that we want to move towards.

The benefits is we will gain deeper insight into the model we will need and also learn about benefits from 'technologies' we want to be on (OSGI, Spring, JPA etc) (sort of like what you did with cheetah but want to take an even more extreme approach, a kind of 'future-spective look at mifos')

We can't achieve this in a reasonable time line on 'current mifos codebase' for a multitude of reasons.