I like the concept of Stephen R. Convey on "7 Habits of Highly Effective People" about how to categorize activities according to the importance and the urgence but I do not like to classify then in 4 categories... if you do not know what I am talking about I recommend you to read the book ;-)
Well, going to the point, none of the apps I have found in the market to organize and remind me about my pending actions and prioritize them are fulfilling my needs. I want to assign an "importance" weight to any action (from 1 to 10, for instance), describe how long the action could take (like 5 minutes from a phone call or 2 months to prepare and write a report, for instance) and a due date. Base on that the app will provide an "urgence" weight and the combination of boths will result on a "relevance" categorization of the actions.
That is the basic idea. But I would like to add other functionalities in the future (or now if you can), so take it into mind in order to design the database structure:
- As other apps do, classify the activites in groups defined by the user, like "work" or "personal", is great because at work you can focus only on the actions related to it, but of course, you should be able to show all the actions or only the group you want.
-Projects... they are composed by an objective and a due date like "learn play guitar before 1 January 2019". A project also have an "Importance" weight and actions assocaited to that project cannot have an importance weight "lower" than that of the project. However the duration of the project is given by the actions duration of the project, like: "search for academies around", "Call academies", "Sign up", "buy a guitar", etc. Some actions depend upon the completion of others (I cannot call an academy if I have not done the research fist), that dependency to be added in the future (and actions can come from other projects too). And provided that relationship and the duration of the actions, the due date of such actions shall be calculated.
Lets start with the App only for Android, but take into mind to develop it for iOS and PC, so think about storing data on a server in the Future, based in user and password (no personal data needed). I hope having your advice on this topic as well I am not an expert on the servers and how to implement this.