Take the 2-minute tour ×
User Experience Stack Exchange is a question and answer site for user experience researchers and experts. It's 100% free, no registration required.

I am looking for professional advice including blogs and papers on how to design scalable Integrated Developement Environments (IDEs) and different approaches to it. By scalable I mean that the IDE should be able to serve users in developing projects from medium-sized to large-scale projects (e.g. eclipse realizes this via a plugin-system). Example-IDEs would be Eclipse, Visual Studio, Leksah or ScalaIDE.

Myself, I have used a lot of IDEs but I would be interested in design principles, guidelines and thoughts designers and developers have/had and it's quite hard to find professional knowledge out there.

share|improve this question
    
One big thing for me is performance and response time. I use Eclipse and it isn't exactly stellar on either account. –  Virtuosi Media Nov 19 '11 at 8:15

4 Answers 4

There are no hard, universal rules for designing any particular class of software. The design of your application will vary radically depending on the most likely use-cases for it, and the kind of tasks you imagine it being used for.

If, for example, you imagine your user creating lots of small scripts from scratch (perhaps to manage automated tests, for example), they're going to have different priorities to someone maintaining a large functional application. If your user is going to be expected to write against a coding style guide, the IDE will have different priorities to one designed for a sole developer playing with bleeding edge code. And the nature of those tasks could themselves depend on the paradigms of the languages your IDE caters for.

This probably seems like a vague response. But actually, if you figure out the answer to those questions and keep them in mind, you'll probably be guided far better than an arbitrarily list of '10 things your IDE must do'.

share|improve this answer
    
I formulated my answer quite vaguely, I edited it to be a bit more precise. The problem I am facing is that I can not find any made research on the specific topic. –  forste Nov 18 '11 at 15:13
    
You talk about scalability - are you asking how to design the frontend, or are you asking out the actual application architecture itself? The latter isn't really a UX issue, and would be better answered on somewhere like Stack Overflow. –  Jimmy Breck-McKye Nov 18 '11 at 16:51
    
Thanks for pointing that out. I am talking about the frontend not about how you can design a scalable architecture for an IDE. Edited my question again to clarify that. –  forste Nov 18 '11 at 20:04

The IDE market is highly competitive. Before you start - what are you going to offer users that others don't?

share|improve this answer

As previous have mentioned: 1. What are you going to offer that is different?

  1. Search for already developed Open Source IDE and look at the inner functions, see what you would do different that could benefit everyone, not just your self!

  2. With your extensive usage of IDE's what have you found to be common flaws? What would you do differently and is this going to benefit the mass?

share|improve this answer

The answer to most of the questions raised on "what is the best from end design for xxx" is strightforward to define, but very complex to do.

  1. Identify the different types of users.
  2. For each of them, identify what they need to do.
  3. Also identify what their goals and aims in using the application.
  4. Then identify what their motivations and drivers are
  5. For each task, considering their motivations and aims, identify a process to let them do this.
share|improve this answer
    
8. Build the system. 9. Test with the actual users. 10. Readjust the design bearing in mind what the users have said. This is a huge process for a large project. So, although this is the process you need, you will have to shorten it, take some short cuts, and potentially spend more time in later phases. –  Schroedingers Cat Nov 19 '11 at 17:37
    
Sorry - in my editing, I lost a couple of steps - 6. As each process is developed, see how it fits in with others. 7. Once complete, assess the whole lot of tasks agaisnt the users goals and motivations, and make sure they can all achieve what they want. –  Schroedingers Cat Nov 19 '11 at 17:39

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.