0

I am creating a project related to education system in which data of universities ,admission and scholarships will be gathered and displayed on site.

In this project I am scraping data from different sites, storing it into database and making it view on site. Actually you can say (correct me if I am wrong) the system is collecting data and makes it viewable.

My questions are:

  • Is data collection a use case?
  • If it is who will be the actor?
  • Note that actors don't necessarily need to be humans. Another system outside your systems boundaries or a bot, can also be considered as an actor. But without additional information, it's hard to answer your question concisely. – πάντα ῥεῖ Apr 5 '18 at 17:19
  • in this project i am scraping data from different sites and storing it into database and making it view on site. actually you can say (correct me if i am wrong) system is collecting data and making it view able – muntazir abbas Apr 5 '18 at 17:25
  • now please can you answer that in this scenario is data collection can be considered as a use case?? – muntazir abbas Apr 5 '18 at 17:28
  • Use cases can exist without direct interaction of an actor, yes. But you should clearly define your (sub-)system boundaries, though. Other systems (you're) "scraping" that informations from, also can be considered as actors (though the name suggests it, an actor can be passive as well). Also put additional information into your question, rather than burying it in comments. – πάντα ῥεῖ Apr 5 '18 at 17:33
2

As mentioned in my comments, your question is very broad (if not too broad, to be off-topic here). But let me try to give you a grasp:

will be gathered and displayed on site ...

is data collection a use case , if it is who will be the actor?

Yes, data collection is a use case that is a precondition to your primary identified use case of viewing the data ("displayed on site").

The point of use case diagrams is mainly to identify what happens inside / outside of your well defined system boundaries. Definition of the system boundary is essential, so a first approach for a diagram might look as follows:

enter image description here

Actors are elements that exist outside your system boundaries and either trigger actions provided by your system, or being triggered by your system to do something.
The Actors can communicate with your system actively or passively. That can be expressed with directed associations in UML.

Use Cases have to reside inside your system boundaries, and will describe (even in pure textual form), how the interaction with the Actors should be done in more detail.

As shown in the above diagram, actors may be more specialized by means of how they interact with your system (database).

A system boundary and description is dependent on identified requirements in first place (this might be also part of contracts with 3rd parties, and worth being payed or not!).

Actors can be generalized (specialized) as shown above.


If you have identified your systems primary use cases, you may want to break these down, to identify more specific sub-systems (and extended use cases), and interaction with your specific Actors, e.g. like:

enter image description here


As the ole' saying goes:
"A picture can be worth to tell more than thousand words, though picture interpretation might need whole libraries to be written!"

Anyways, UML is a generic (picture) language, and comes along with specifically agreed interpretations (only a single book, instead of a whole library).

1

You use 2 action words when describing this activity within your project: "gathered" and also "collected". Questions to ask are:

  • Is this the same activity? I think Yes
  • Is this activity necessary to accomplishing the "display" goal? I think Maybe
  • What are all the ways this can be accomplished? Maybe more than one
  • Can these different ways be implemented differently?

My point is that not only is "Data Collection" a use-case, but there are other use-cases involved with the "gather or collect" step, each of which may have one or more actors.

  • Directly Linking to external educational datasets may be an option and a Linking System may be the actor in this case;
  • Downloading exported datasets may be an option in which case a "downloader" utility may be the actor;
  • If those downloads are available in different formats, then a format-specific download utility may be an actor for each format-specific downloader (ie, ZIP, CSV, business-specific format.)
  • Manual keyboard data entry may be a (last-resort) use-case for those data not available in any other method; and clerical staff (or external staffing resources) may be the actor in this last case.

The key to identifying Use-Cases and Actors is diverging into all the methods/practices involved in achieving a step, then clarifying what requirements are necessary and how those requirements will be met.

  • sir i am collecting data through web scrapers from different websites , in this case..... am i (system) is the actor??? – muntazir abbas Apr 5 '18 at 17:38
  • @muntazirabbas The web-scrapers are actors, as I mentioned in my comment. – πάντα ῥεῖ Apr 5 '18 at 17:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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