So, I have been thinking more seriously about my research lately and I came across a special issue on “End User Development” in the Communications of the ACM this month (see references at the end of this post):
I got to thinking about whether of not anyone has convincingly solved the problem of End User Database Design.
The system I am thinking of would have the following characteristics:
1. Completely WYSIWYG, no abstract ERDs (unless the user really wants to see them)
2. Automatically create, delete and enforce constraints based on the data the user enters
3. Allow for the creation of new attributes and entities without much cognitive load
4. Automatically normalise data that needs to be normalised
The above is definitely achievable, it would just require a lot of thinking, kind of what a PhD is all about.
Obviously, I haven’t done any research to see if anyone has done this before. Even if they have I am sure I could do it better 🙂
The reasons I have chosen this as a potential arena are:
1. It’s a very broad topic, so I can narrow my contribution to a few key areas
2. It’s a hot topic (as evidenced by the special topic).
3. Most research in this area (as you can see by looking through the articles in the ACM) is decidedly not in data-centric applications, the focus is on small optimisation, processing problems or design problems.
4. It has a business focus and I can test the resulting theories & prototypes on real business people.
So at the very least my PhD will really belong in the Business School (for a change).
5. I have wanted to write that paper on the meta-pattern and reflecting off the database for about two years now. Finally I think I may have found a place where it will be useful.
6. The usability side of things is going to be a great challenge that I look forward to.
7. As is the algorithm for assisting the user in their evolutionary design (intelligent agent styles)
8. I don’t have to rely on any member of the department for knowledge in this field, I can research it myself.
9. It plays to my strengths (analysis, design & implementation).
10. It could turn out to be a viable product if I do it properly.
- Beringer, J. (2004). Reducing Expertise Tension. Communications of the ACM, 47(9), 39-40.
- Berti, S., Paternò, F., & Santoro, C. (2004). Natural Development of Ubiquitous Interfaces. Communications of the ACM, 47(9), 63-64.
- Blackwell, A. F. (2004). End-User Developers at Home. Communications of the ACM, 47(9), 65-66.
- Burnett, M., Cook, C., & Rothermel, G. (2004). End-User Software Engineering. Communications of the ACM, 47(9), 53-58.
- Fischer, G., E.Giaccardi, Y.Ye, Sutcliffe, A. G., & Mehandjiev, N. (2004). Meta-Design: A Menifesto for End-User Development. Communications of the ACM, 47(9), 33-37.
- Mørch, A. I., Stevens, G., Won, M., Klann, M., Dittrich, Y., & Wulf, V. (2004). Component-Based Technologies for End-User Development. Communications of the ACM, 47(9), 59-62.
- Myers, B. A., Pane, J. F., & Ko, A. (2004). Natural Programming Languages and Environments. Communications of the ACM, 47(9), 47-52.
Repenning, A., & Ioannidau, A. (2004). Agent-Based End-User Development. Communications of the ACM, 47(9), 43-46. - Sutcliffe, A., & Mahandjiev, N. (2004). End-User Development. Communications of the ACM, 47(9), 31-32.
- Wulf, V., & Jarke, M. (2004). The Economics of End-User Development. Communications of the ACM, 47(9), 41-42.