Did you like how we did? Rate your experience!

4.5

satisfied

46 votes

Hi all, I am working on a C# assignment and need to create a UML?

Do you want someone to do your assignment for you?? What kind of diagrams do you need? Are the required diagrams specified in the assignment? Use Case Diagram I would choose a high level diagram first. Start with a use-case diagram. Define the roles of the users of your system, including systems to which Stock Management System communicates. Dont include any functional elements from your system. Define the high level use cases and assign them to the roles. Component Diagram Next, draw a component diagram. This defines the technical components that make up your design, their public interfaces and the relationships between them. If you have 3 tiers this may be the web application, service layer and database. It may be 2 components (application and database) if you have a monolithic design. If you are using microservices, you may have a number of components, including an API Gateway. In the component diagram, concentrate on drawing each component as a black box'; assign a responsibility to each component and define the interfaces it exposes. The draw dependency arrows showing which component calls each interface. Deployment Diagram You may need to draw a deployment diagram. This is more of a physical diagram showing how and where the system is deployed. Shows the physical devices such as nodes networks, servers, the connections between, and also shows the mode upon which each software component runs. Sequence Diagrams Take your use cases, and draw a sequence diagram for each. This is a lower level diagram that shows how your components interact to achieve each use case. You can show timing and loops on these diagrams (but don't get obsessed with lots of detail, you can look at the code for that). These are important as these diagrams are dynamic, showing interactions, rather than static and just showing relationships. Class Diagrams You may also need class diagrams where you explode out each component and look at the classes inside. Draw the same interfaces on the component, and include the important classes within the component. Join the pertinent classes to the exposes interfaces. Depedning on the complexity, you may wish to exclude simple classes and excessive detail. You may wish to include/exclude fields/methods in your classes. Class diagrams are less important as they are usually volatile and become out of data as the code changes. These diagrams can also be auto generated from the code, ensuring that what you're looking at is up to date. Dont get obsessed with details on UML diagrams. Their purpose is to express ideas, give an overview of how the system works, and provide a starting point. For the real detail, you can look at the code (once its written). Good luck!

100%
Loading, please wait...