CSC/ECE 517 Summer 2008/wiki2 4 acmoore2

From Expertiza_Wiki
Jump to navigation Jump to search

Use cases. There are even more pages on the Web on use cases than on MVC. If someone wants to learn about them, what should (s)he do? Look at the first few hits in Google? I expect we can do better than that. Write a review of the use-case sites on the Web. Which are best for learning about the concept? Which have the most instructive examples? Which teach advanced concepts that are not apparent in perusing most use-case sites? Read at least several dozen pages before deciding how to organize your overview.


Introduction

Use cases have become an integral part in the development of not only software engineering but system engineering. Wikipedia defines use cases in the following way:

A use case is a description of a system's behaviour as it responds
to a request that originates from outside of that system.

Use cases involve actors, starting with a primary actor which initiates an interaction with the system which leads to interacting with all other actors.

This is a pretty straight forward explanation of what a use case is but there is so much more information available on the world wide web regarding this subject. However, with the cluttered nature of the web, acturate, reliable and informative information is hard to come by.

Through this article I will discuss and review the best websites for use case education on the web. While some were easy to find, through the google search engine, for example, others with perhaps even more thorough information were harder to find.


Resources

The following are resources that I would recommend to anyone interesting in learning about use cases for software requirements engineering.

Wikipedia

Wikipedia always seems to do a good job summarizing software engineering topics and their article on use cases is no different. They do a good job of giving a good description and overview of what the use cases represent while give a detailed description of how to write use cases.

Especially in today's world, using use case templates is an efficient way to write them and Wikipedia dedicates a whole section for this purpose. Finally the nicely outline the benefits and limitations of use cases.

Overall the article is tremendous in scope however it is lacking in explicit examples that would perhaps help a beginner better understand the direct usage of use cases.

Inside Infogenium

Inside Infogenium's article on use cases is like a user friendly version of Wikipedia.com's article. The language is easier to understand and the flow of the explanation is also more user oriented as opposed to a straight educational approach.

The article is limited in its explanation, using very little detail explanation. However, there is a well done, simple, straight forward example of what use cases are meant to do. I think this example is very intuitive and helpful.

parlez|uml

Parlez|Uml has two great slide shows that would be ideal for someone trying to learn more about use cases. This first slide show, 'Use Cases: An Introduction' does a great job of explaining the use case. There are a lot of diagrams and examples that making the learning very intuitive.

The second slide show that really attracted me to this site is entitled 'Driving Development with Use Cases'. It gives a greal scenario how use cases can be incorporated in the development cycle and how critical they can become to driving software development. It was for this reason that I like this site so well.

SoftLab

SoftLab has a slide show presented by Igor Ivkovic posted on their website. Althought this document is not as professional as some of the other websites I looked at I felt that the detail of the scenarios that were presented were key. Some of the simple examples presented on the previous reviewed sites might be adequate for some users, while others could benefit from a more detailed and complete scenario for more complex systems.

I thought the the detailed explanation was well done with complete scenarios. However, the document does become a little wordy and not as user friendly as the other sites.

ReadySetPro

ReadySetPro has set forward a tutorial on a six step approach on how to write a use case. There is a lot of effort put into the educational side, learning what it envolves and how the use case is used, that very little energy is put into explaining how exactly to write the use case.

The six step approach by ReadySetPro is very intuitive, excellently laid out and provides ample examples to help a user create their own use case document.


Conclusion

I believe that these five sites, while some were harder to find than others, are all great guides and examples on understanding and eventually creating a use case document.


External References

[1] http://en.wikipedia.org/wiki/Use_case

[2] http://infogenium.typepad.com/inside_infogenium/2007/07/getting-started.html

[3] http://www.parlezuml.com/tutorials/usecases.htm

[4] http://courses.softlab.ntua.gr/softeng/Tutorials/UML-Use-Cases.pdf

[5] http://www.readysetpro.com/whitepapers/usecasetut.html