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

Friday, November 19, 2010

Brief description of the company

Hey guys, this is how the company description is going so far. This time I tried to concentrate mainly on the system, referring back to the interview and getting most of my information from there because I wasn't exactly sure what specific area of the business I'm supposed to be talking about. Anyways have a read of it and let me know if i'm wayyyyyyyyy off the point or if things just need to be altered or changed.

Brief description of the company

We have been hired to make a system as efficient as possible for a retail company that deal in four main areas. In each of these areas of retail specific salespersons are required to have knowledge of the area in which they are dealing with. Because the company is divided, it makes sense that the checkouts and data systems are all kept separate as to avoid confusion.

We’ve been assigned to work in the Electrical Appliances area of the company.

The company already has a very detailed system. It is designed to hold specific information such as its: Name, Model code, description, quantity, retail price, margin, rebate on item, sales history. It gathers all this data so that any employee can quickly get any information needed about a particular model.

With this company anything that is ordered for retail is not paid for right away. The company doesn’t pay anything for the stock for a prearranged number of months. This allows the company to first sell all the stock and gain a profit before having to pay. This however can lead to problems if not all the stock is sold before the set pay date, which could result in a loss to the company. The system currently does not have a function in which to warn staff that certain stock is approaching this deadline.

Currently the only members of the company that have permission to access and edit the stock system are the managers. The main employees are only allowed to view it.

Roles in the Business

Different Roles in the Business

Cashier
The cashier is the person who books items out of the system and takes payment for items purchased. They need access to inventory stock, have a book out system, and need a system for booking in returned items. Also they need access to customer details in order to modify an invoice during purchase process.

Sales Staff
The salesperson mainly deals with customers on a daily basis and needs access to customer records, the ability to write up an invoice and to search inventory stock for goods to sell.

Floor/Assistant Manager
The floor manager manages staff, deals with customers and orders stock. In addition to the salesperson menu, the floor manager will need access to order stock, book stock in and book stock out.

Store Manager
The store manager is the person who runs everything in the store. From dealing with customers to company representatives and manages staff. The store manager needs access to everything in the system.

Wednesday, November 17, 2010

Meeting

We had a meeting today for an hour. We went through what we needed to get done and we will look through everything again before our next meeting. We also will try to have more to work done, including the use case diagram and conceptual diagram.

Tuesday, November 9, 2010

Brief Discription of the Company

The company we have chosen is a multinational company that is open to the public, with more than 160 stores in Austrailia (from which it originated), New Zealand, Slovenia, Ireland, Malaysia and Singapore.
The company first opened in 1961 and has been expanding ever since.
This particular company deals in many different areas of retail:

-Electrical goods
-Entertainment
-Bedding
-Furniture

Because each of these areas of retail differ in expertise, each section is allocated specific salespeople who do not deal in the other sections. For example someone working in electrical goods would never be assigned to work in the furnitures department.
Along with each department having specific people working in that area, the checkouts are also divided up for each of the sections. Which means that every checkout has a different system to deal with that area.

This company has been around for nearly 50 years, and so because of this its system has been under constint development to ensure that the system is up to date and can deal with almost any situation that may arise in the store.

Monday, November 8, 2010

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, where as 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. 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. Also, some of the questions that we asked, the employee wasn’t certain about some of their answers to our questions, but all in all it turned out to be a success.

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 can be used from many different written documents, such as manuals and leaflets. It is information about the company where you can see if there any flaws or problems within a company/business.

· 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.

Meeting

We had a meeting today for an hour to go through everything we have done, and to make sure we all understand it as well. We found a few things that need to be changed with what we will be handing up on Wednesday

Thursday, November 4, 2010

The Interview

The Interview
How are products ordered?
The products are normally ordered by the floor manager when levels are low. Also head office will order large quantities of products that have been heavily advertised.

Does system automatically generate orders for items out/low in stock?
No. This would not be a good idea because we are in a technologically driven time so products that sell well this month may be out of date next month. I don’t think this could work in our type of business. But for small items such as hoover bags, kettles, toasters etc. we would benefit from an automatic ordering system.

How are products booked into system?
Products are booked into the system normally by our stock controller in our warehouse and sometimes by our managers. Both need to have access to this option as sometimes the wrong thing may be booked in and not be realised until it is being sold on the shop floor. In scenario like this the staff member that is selling the item will bring it to the nearest manager and then s/he can easily rectify the problem.


What information does the system give about a product?
Name, model code, description, quantity level, all pricing such as retail price, margin, price ex vat, rebate on item, sales history, if it’s a current model or not.

What information does system need about the product?
It needs to have a unique model code in for the system to book it in. Also all of the pricing needs to be done before people can access the item on the system.

How does the system deal with aged stock? Does it warn you beforehand?
Who does it warn? Does the system add incentive to sell aged stock?
Aged stock is highlighted in the systems reports in order to show its urgency for sale. We operate our business in a way of credit with our suppliers. We have 3 months to sell an item before we have to pay for it. Obviously we want the product to pay for itself so this is quite an important requirement of the system. What would be beneficial would be if the system could warn us about a product that is coming close to the 3 month time period. It would be very beneficial for the system to warn anybody with access to the stock system. As for incentive, it would be a disaster for the company to have a system automatically generate incentives! I like to do that personally for my sales staff. It would be handy for the staff to be able to keep a track record of everything they sold catagorised by age level, display items etc.


What does the system do with non-current/discontinued products?
We have 2 different views of our stock list. One of current models and discontinued models that are still in stock. This shorter list is quick and easy to read and only shows the necessities. There is also another list containing all current models and all discontinued products. This is good for generating reports and viewing sales history etc. It is only accessible by managers.

Who has permission to access the stock system?
Only managers can order products and view all discontinued stock in the inventory. Salespeople can see the remaining inventory but cannot modify it in any way.

What reports do you need generated regarding stock?
Age stock reports, stock levels, sales history, products by brand, products by category, products that never sold since initial purchase, product sold by salesperson.

How do you search the system for a given product?
By model code or description

Are they catagorised?
No. they are sorted in alphabetical order. In reality it would be handy to be able to search by category and alphabetically.

What if product found in store is not in system?
If the product has been in the system previously it can be added by any of the managers. But if the product does not have any entry in the system we have to get on to head office. It would be better to be able to add new products to the system manually

what if product comes back faulty from customer?
They are booked into the system but have to be marked as faulty manually. The problem with this is that people forget to mark it as faulty! Then it shows that we have this product in stock, sell it to a customer and then when we go to give them the product we find that its faulty! It would be much better if we could enter the faulty items into a quarantined section of the system.

Can you see any way the current system could be bettered?
All of the suggestions I mentioned above.
• It would be handy to be able to search by category and alphabetically.
• The staff to be able to keep a track record of everything they sold catagorised by age level, display items.
• We would benefit from an automatic ordering system.
• It would be better to be able to add new products to the system manually
• It would be much better if we could enter the faulty items into a quarantined section of the system.

Tuesday, November 2, 2010

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 fucntion properly without having to make the full size product in such detail. Which would save money for the company manufacturing it.

Prototyping can be broken up into 4 main categories.


Proof-of-Principle Prototype:
This type is used to test a certain part of the planned design without making it exactly like the final product, this is used to see if a specific design can be made using cetain materials.This way it can be determined what way is best to make the product and eliminate problem areas.


Form Study Prototype:
This categorie concentrates mainly on the basic size of the product, and how it would look. there is more effort put into its look and design rather than its actual functions.


Visual Prototype:
Is a version of it based on appearance, textures, color, without any of the actual functions of the final product. This is mainly helpful for market research, for approval and for photoshoots for sales.


Functional Prototype:
This concentrates on making a functional product. To ensure that there is no faults with the design. In most cases these prototypes are made a lot smaller to reduce the cost. This is like a final check to make sure the product is designed well and that there are no last minute flaws before final, larger production.

______________________
Advantages of prototyping

* 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.
* The prototype gives users an idea of what the final system looks like.
* Gives a chance for users and producers to suggest new ideas or edits.
* Saves money. You dont have to repeatedly make proper expensive products for testing.
* It is faster to locate problems and increase the development speed.
* Allows us to spot any problems sooner, rather than after the product has been made.
* Various aspects can be tested and quicker feedback can be got from the user.

________________________
Disadvantages of prototyping:

* Prototypes would not be suitable for large applications.
* Producer might produce a system that would not meet all the organizations needs
* Structure of system can be damaged since many changes could be made.
* Producer might get too attached to it.
* Time spent making these prototypes could result in a loss of interest in some consumers which could result with the product being dropped.

Meeting for Requirements

We had a meeting today at 1 o'clock for an hour to discuss our different techniques, and how we were getting on with the ones we were assigned. We also went through a list of questions that were prepared for the company we will be interviewing.

Brainstorming elicitation techniques

Brainstorming Techniques


Brainstorming is used in a wide variety of ways, whether it’s one person on their own or many people working together it can always be of some help. It’s a cheap and easy way of getting ideas on how to solve problems. It is the most widely used and creative tool around at the moment as it helps to get your mind on the right track by sharing all the information you know either for yourself, or to the rest of the group. It is the newest problem solving concept. It was made popular in 1953 by Alex Osborn who described brainstorming as “a conference technique by which a group attempts to find a solution for a specific problem by amassing all the ideas spontaneously by its members”. It is a special technique that makes you think about different answers and questions you hadn’t thought about before. There are a few rules for brainstorming techniques, otherwise there might not be a solution to the problem is people get too out of control.

Advantages of Brainstorming:
• Cheap: Brainstorming costs little to nothing to work.
• You don’t have to be highly qualified to use it.
• Not a very hard technique to understand.
• Helps to generate new ideas and get answers to old ones.
• Helps provide widespread involvement throughout the group.
• Doesn’t require much resources
• Good way to get over obstacles that are slowing the development of the problem solving.
• No one is judged on their opinions.


Disadvantages of Brainstorming:
• Can take a long time to work out the kinks if the group is not organized properly.
• Can be hectic, leading to people being afraid to speak their opinion.
• Can go into too much detail that some things may not be used.
• Some people who are more outgoing then others may end up taking over the session with all their ideas. This form of leadership may lead to people being afraid to talk themselves.
• Not recommended for larger groups of people, as there could be too many trying to have their say at the same time.
• Can have repeats of opinions if people aren’t paying close enough attention.
• May not end up with usable solutions.

Group decision on what elicitation to use

Group Decision
The group has decided that an interview type of elicitation would be best suited to understand our needs in the development of a software program because it gives us a chance to meet with the customer, understand their needs, ask any questions if we are unsure about something and develop a proper understanding of what the customer wants and expects from the future program.
Also it will give us a better understanding of the system that is currently in place and the customer can enlighten us on where s/he thinks it could be improved upon.

Elicitation technique Cian Buckley

Elicitation Technique

Interviewing

Description
When two different bodies wish to communicate ideas or explain something to the other an interview can take place. They are of a formal nature. Usually the interviewer has a pre prepared list of questions to ask the interviewee.
An interview would best suit our situation in developing software because it is a one on one communication with the customer you are developing the software for. The customer gets a chance to explain exactly what s/he wants out of the finished product.

Advantages
• Quick and effective
• Customer can get points across easily
• A good starting place as you are in control of the conversation
• Everybody involved is already used to the layout of an interview so knows what to expect

Disadvantages
• Questions may not be relevant to product being developed
• Conversation may lead astray
• Not all ideas can be expressed properly through verbal communication
• It is possible to overlook a topic

Who's doing what

We have decided that Cian will do Interviewing techniques, Aisling will do prototyping techniques and I will do Brainstorming techniques, which we have almost completed. We are also hoping to do the interview tomorrow.