I am coming from the Embedded Systems domain with more than 3 years experience. In my current project, at the beginning, I was only responsible for only software development and the Team consisted of 3 people. But, as time passes, hardware eng. and project lead eng. left the job respectively. So far, the project moved with a zero- architecture documentation to give an output as fast as possible. Later, new project lead took over the project and started from the begining with applying V-model. We started to create product specs->HLR->DLR on EXCEL. But now, He left the job too :). Now, I am alone on my way with nearly 700 pieces of well written product requirements. Anyway, I started to gathering and classfying requirements as non-functional, functional, business, stakeholder etc. As gathering non-functionals, I also classified them scalability, performance, regulatory, design contrains etc. So far, I did not draw any use-case. Please verify me here, what I know is that input of use-case are functional requirements. So, I created a use-case cards and now I am planning to write use-case cards for each functional requirements then also write a sequence diagram for each use-case card. Now till here, am I going right ? Does notations used in use-case such as include, extend etc. help me to create class diagram ? Is this also right way ?
Related Questions in UML
- steps to create a web app with backend and database and web
- How to present this example concept in UML: Using 2 LCD displays in C/C++
- In the UML diagram, in the Class diagram, what does stereotype mean <<compound>>?
- UML representation of containerized services
- uml class diagram for boxing match
- Polymorphism can be described as:
- Why am I getting a plantUML syntax error with a statechart in a package?
- System or external system as an actor in a use case?
- How to model statechart behavior inheritance using UML?
- Can we have an interface create objects of another interface in UML Class Diagrams?
- Is my relationships correct in my class diagram
- How to attach a Port shape to a class shape?
- How to correctly create a sequence diagram?
- How can I insert activity diagram image to an use case in Enterprise architect?
- Use case extends or include
Related Questions in SYSTEM
- Network System - Cisco Packet Tracer
- How to make Python script use a designated directory as source for imports (from within the script)?
- Setting Up a Remote Employee Clocking System with Biometric Recognition
- How to use mmap iteratively to map data in small chunks from a large file
- Confusing Wording in SSH-CONNECT [RFC4254]
- which programming language is suitable for this task?
- How to replace standard call to System.currentTimeMillis() via AspectJ?
- Android's Google services error, something with Magisk and Zygote SIGABRT (SIGNAL 6)
- Electron, system notification and playing sound
- Python solver returns no values upon running the code
- The system automatically restarts when opening the browser, IntelliJ IDEA, or WebStorm. How can I resolve this issue?
- Running a python program as a system service on Ubuntu 22
- Best multi-threaded epoll architecture? (also question about EPOLEXCLUSIVE flag)
- error in saving tiff files to a pdf file using ghostscript win64c
- All permissions Android system
Related Questions in CLASS-DIAGRAM
- In the UML diagram, in the Class diagram, what does stereotype mean <<compound>>?
- Visual Studio Class Diagram Class File Location
- Can we have an interface create objects of another interface in UML Class Diagrams?
- Assignment to create a class diagram and structure the system correctly
- Is my relationships correct in my class diagram
- Having issues with Intellij diagram generator
- How to correctly create a sequence diagram?
- How do I position the interface on top?
- How to center allign literals compartment title in Enum class diagram?
- What is the correct representation of inheritance and implementation in the UML class diagram?
- Confused with a symbol in an UML diagram
- How to model the dialogue between users in a UML class diagram?
- StarUML fails to open file with JavaScript error
- Validation of Class Diagram: Is the Proposed Model Accurate?
- Attendance management system uml class diagram
Related Questions in USE-CASE
- System or external system as an actor in a use case?
- Use case extends or include
- Use cases vs use case scenarios
- Is there a difference between authentication as a use case and an actor that has that privilege?
- Financial management use case diagram for dietary advisor application
- erd diagram Car buying and selling website
- I'm a little bit unsure about my use case diagram
- How can i draw a use case diagram when there is 6 use cases and each has a crud operations?
- Are Bloc events the same as Clean Architecture use-cases?
- Domain layer with Use Cases in android app
- Is there any specific number of output arrows from one activity in an activity diagram?
- How to setup HILT DI in layer base multi-module android application
- Should we want to pass Usecase interface as param
- Use case or actor responsibility?
- Shall the behaviour of an included use-case always be executed with the behavior of the including case?
Related Questions in OOAD
- How should i apply SOLID principles for an entity which have two types, one editable and the other uneditable
- In OOAD, how should i represent the property that the entity is shared with multiple users with different permissions?
- Builder Pattern : Can our director deal with Concrete builders directly?
- Creating reusable classes for overlapping permutations/combinations of input
- How can we improve the OO design between two interfaces
- Features and Use Case Diagrams Vs Requirements and Use Cases
- Is there any specific number of output arrows from decision node and input arrows to the merge node in activity diagram?
- Is <MethodName>'Ext' an object oriented design pattern?
- How do I make instances of different child classes have the same instance of their common parent class?
- Which comes first? Class, use case diagrams or dive into code using TDD?
- How to implement custom type safety
- YAGNI vs Program to interfaces rather than concrete implementations
- Memory allocation when declaring a series of class objects in C++
- How do I create class diagrams from Use Cases?
- How do you refactor entrypoint classes in an Application?
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Can classes be derived from use-cases?
When Ivar Jacobson invented use-cases he aimed at a development method that would be driven by the use-cases and allow to methodically derive the implementation from the use cases. That was his vision end of the 80s. His first attempt was called Objectory, which was bought by a larger company and lead to Rational Unified Process, which was generalized to be less proprietary into the Unified Software Development Process (Unified Process, or UP in short).
There is in particular one practice that allows to translate a use-case into classes: the Entity Control Boundary approach: use-cases become
«control»classes, links between use-cases and actors become«boundary»classes, and«entity»classes are created for the business objects identified in (or derived from) the use-case narratives.Once these first candidate classes are modelled, further work is undertaken during the design and classes may get reorganized to best fit into the solution (e.g. several boundary classes are regrouped for designing the GUI, and may thereafter be decomposed into UI elements, etc...).
But is this the best approach in your case?
UP is iterative and incremental, and fits well into modern version of the V-model, since the early iterations of the elaboration phase aim to stabilize the architecture and teh components (or sub-systems).
However, this may be a very time-consuming approach, especially considering the huge number of use-cases that you have. If you look at all the questions that modelling a use-case usually raises, especially if you add
«include»and«extend», you risk to spend a lot of time (more than 300 days?) to draw robust use-case diagrams. And then, using ECB, your requirements might be outdated before you finish the design!Alternatives
On the other side, some non-academic authors claim that every system has 3 to 5 really main use-cases: as a user I don't have 700 goals for using a system. So you'd better identify these and see how they relate. It's probable that many of the other requirements are far too detailed and could easily be assigned as additional information for the main use-cases.
In a similar thought, Ivar Jacobson has adapted his method to the current software engineering reality, with the use-case 2.0 approach. Don't misunderstand me, the UML would still be the same, but ECB no longer appears (modern frameworks influence much more the design of the boundaries than the use-case model, and entities are modelled using more focused approaches, such as DDD).
The idea behind use-case 2.0 is to slice the main use-cases into several smaller parts and start to develop something that makes sense for the user and can then be further refined.