Sunday, November 21, 2010

References Used

For Brainstorming Techniques I used:
http://www.brainstorming.co.uk/tutorials/whatisbrainstorming.html,
http://en.wikipedia.org/wiki/Brainstorming,
http://www.businessballs.com/brainstorming.htm,
http://www.effectivemeetings.com/teams/participation/brainstorming.asp,

For other Elicitation techniques I used:
http://ezinearticles.com/?Requirements-Elicitation-Techniques&id=1901263,
http://xpdianreq.blogspot.com/2009/10/requirements-elicitation-using-workshop.html,
http://www.fissure.com/pdfs/Eliciting-Project-Requirements.pdf,
http://www.bplogix.com/docs/imarkup_document_review.pdf,

Other Elicitation Techniques Edited

What is Requirements Elicitation Techniques

Requirements Elicitation Techniques are different ways that someone can get information about a system from different people such as staff, customers and other types of stakeholders. Examples of techniques that weren’t looked at in detail are:

• Workshops: This is a series of meetings that help to bring together the main people of the project which can result in getting some objectives to solve a problem. It allows you to also bring people outside the company into the equation in solving different problems you may come up against.
• Surveys: It a tool, used to collect information of questions and subjects you would like to know more about. It is something that can be used within the company with different employees, or can be used to get input from customers and/or shareholders with the company.
• Documentation Review: This is when different written documents, such as manuals and leaflets, can be used to figure out problems within a business and see if you can get any solutions from it.
• Focus Groups: Like workshops, it is mainly made up of interviews with different stakeholders and raising awareness to any issues or questions that need to be answered in order to get a solution.
• Observation: Where someone watches and takes note on how people work in the company and ask questions to see if there is anything that the employees find problematic.

How was the Interview successful/unsuccessful

Just a little editing done to make it make more sense.

How was the Interview successful/unsuccessful

The interview was successful because we were able to get from it where there is a problem within the company’s system and where it can be fixed. It turned out better then brainstorming and prototyping as well because we were given all the information needed.

With brainstorming we would have needed to find the problem first, know a bit about how the company operates, and then figure out solutions to the problem. This wasn’t suitable as it would have taken more time then we had to get the technique completed in our short time space. We did, however, use brainstorming to come up with many of our questions for the interview, bouncing ideas off of each other to see what could be suitable questions. It worked well under those Circumstances, making the process of getting the right questions easier and a lot less stressful. We didn't have to think about if what we came up with was good until right at the end, which made it much easier to focus also.

Prototyping wouldn’t have worked either because we didn’t have anything to work off of from the start, which would have meant more time figuring out what to fix, when we didn’t really know what it was that could have been fixed in the first place.

The only way in which the interview was not successful was that we didn’t have much time with the employee to ask everything we had wished to. We would have like to have found out where they thought the company was heading and how they would like to better it in the future. Some of the questions we had prepared for our interviewee, they didn’t have a proper answer to, but all in all it seemed like our best way of figuring out how to get a good system up and running for the company.

Rules for Brainstorming

Rules for Brainstorming:
• Go for quantity
• Encourage wild ideas (get radical)
• Build on ideas of others
• One conversation at a time
• Stay focused of the topic at hand
• Be visual in the presentation
• Combine and improve ideas
• Have one catalyst to keep the group focused
• Don’t hold back ideas
• Don’t judge
• Set a time limit

Software Development prototyping

Prototyping is a way of testing certain areas of a product before it can actually be put into production. This may vary on the different areas you wish to test in a product. Prototypes can be used to give users an idea of what the final product would look like, its size or to see if the colours and layouts are suitable for its purpose, this can then be used to also help attract funding.
Prototypes can also be used to make sure the product can function properly without having to make the full size product in such detail. With software prototyping there are two basic methods used, these are Throwaway Prototyping and Evolutionary Prototyping.

Throwaway Prototyping (or close ended)
this involves the model being created to test various areas of the system, these prototypes can then be discarded once the testing is completed. This is used more towards the beginning of the design process to try different methods and helps further development of the model. This method helps identify the main errors and further requirements of the model. Throwaway prototyping is a very fast way of getting feedback, and as a result saves money. The sooner a problem is encountered in the software the easier and cheaper it is to fix.

Evolutionary Prototyping.

Evolutionary Prototyping is based on building a very detailed and well structured system that is constantly edited and changed. This allows specific features to be added in and tested, which wouldn’t be able to be incorporated during the design phase. These are functional systems unlike throwaway prototyping.

As users work with this prototype they are able to determine flaws or areas that can be improved on.

Advantages:

  • Can prevent errors by testing the software before it is completed
  • Saves time and money by finding problems early in development
  • Allows feedback from users to ensure it is simple to use and meets all requirements.
  • With the aid of a prototype, it becomes easier to attract funding
  • Helps to make sure the product is up to a certain level of quality.


Disadvantages:

  • Analysis on a specific part of the prototype can distract the developer from the overall system.
  • Developer might get too attached to it.
  • Developer may spend too much time on the prototypes and make them too complex, the whole point of the prototypes is to be completed quickly.
  • Structure of system can be damaged since many changes could be made.

Use case Diagram for Project

Here is what I have done of the use case diagram