CO7207 Project: UML Modeling and Programming with EMF for IT Solutions

Verified

Added on  2023/04/26

|12
|799
|111
Project
AI Summary
This document presents a comprehensive project on UML Modeling and Programming with EMF, focusing on the development of software models for a customer management system. The project begins with a system description, outlining the business, its stakeholders (manager, client, and consultant), business entities (sole proprietorship, corporation, and small business corporation), use cases (login, register, request submit, and approve request), and business activities. The behavioral model includes a use case diagram and an activity diagram. The structural model contains a class diagram, business constraints, and an object diagram. The project concludes with a model instance, including code examples to create and save an instance of the model. The project includes detailed diagrams and code to illustrate the concepts of UML modeling and EMF programming for an IT solution provider system. The document also includes a bibliography.
tabler-icon-diamond-filled.svg

Contribute Materials

Your contribution can guide someone’s learning journey. Share your documents today.
Document Page
Running head: UML MODELING AND PROGRAMMING WITH EMF
UML Modeling and Programming with EMF
Name of the Student
Name of the University
Author’s auto:
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
1UML MODELING AND PROGRAMMING WITH EMF
Table of Contents
Task 1: System Description:............................................................................................................2
Task 2: Behavioral Model...............................................................................................................2
2.a Use Case Diagram:................................................................................................................3
2.b Activity Diagram:..................................................................................................................4
Task 3: Structural Model.................................................................................................................5
3.a Class Diagram:.......................................................................................................................5
3.b Business Constraints:.............................................................................................................6
3.c Object Diagram:.....................................................................................................................7
Task 4: Model Instance....................................................................................................................7
Bibliography:.................................................................................................................................11
Document Page
2UML MODELING AND PROGRAMMING WITH EMF
Task 1: System Description:
The main stakeholders to be considered while designing the system are manager, client
and consultant. The business entities are sole proprietorship, corporation and small business
corporation. The use cases are login, register, request submit, approve request and many more.
The activities of the business are listed below.
i. The IT Solution provides various IT related solutions to customers
ii. The customer has to submit a request first through their website
iii. The IT Solution will assign consultant one at a time to the request
iv. If the outcome is not satisfactory, the customer can request for another consultant
v. The customer needs to have an account to submit a request
vi. Each customer has a login id and password
vii. The request will have a status field which can store progressing, de-satisfied,
completed and rejected status
viii. The customer can pay the charge either by cash or card
Document Page
3UML MODELING AND PROGRAMMING WITH EMF
Task 2: Behavioral Model
2.a Use Case Diagram:
Figure 1: Use Case Diagram
(Source: Created by Author)
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
4UML MODELING AND PROGRAMMING WITH EMF
2.b Activity Diagram:
Figure 2: Activity Diagram
(Source: Created by Author)
Document Page
5UML MODELING AND PROGRAMMING WITH EMF
Task 3: Structural Model
3.a Class Diagram:
Figure 3: Class Diagram of IT Solution Provider System
(Source: Created by Author)
Document Page
6UML MODELING AND PROGRAMMING WITH EMF
3.b Business Constraints:
The business constraints are as following.
i. The organization will accept request of only registered customers
ii. One consultant will be assigned to one request
iii. A customer can have one active request
iv. Every user have to be registered into the system
Business Constraint OCL
One consultant will
be assigned to one
request
context Request inv: consultant->size() <= 1;
A customer can have
one active request
context Client inv: self.request->size()=1;
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
7UML MODELING AND PROGRAMMING WITH EMF
3.c Object Diagram:
Figure 4: Object Diagram of IT Solution Provider System
(Source: Created by Author)
Task 4: Model Instance
Created a plugin project with name itSolution.instance.
Then the following dependencies are added to plugin.xml. org.eclipse.emf.ecore,
org.eclipse.emf.ecore.xmi and itSolution.
The class for creating the instance is as following.
package de.vogella.emf.webpage.instance;
import java.io.IOException;
import java.util.Collections;
import java.util.Map;
Document Page
8UML MODELING AND PROGRAMMING WITH EMF
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.emf.ecore.resource.impl.requestImpl;
import itSolution;
public class CreateSaveTester {
public static void main(String[] args) {
itSolution.eINSTANCE.eClass();
itSolution factory = itSolution.eINSTANCE;
.setName("index");
.setDescription("itSolution");
.setKeywords("Eclipse, EMF");
.setTitle("Eclipse EMF");
itSolution().add(page);
Resource.Factory.Registry reg = Resource.Factory.Registry.INSTANCE;
Map<String, Object> m = reg.getExtensionToFactoryMap();
m.put("itSolution", new requestImpl ());
ResourceSet resSet = new ResourceSetImpl();
Resource resource = resSet.createResource(URI
.createURI("itSolution/request.website"));
resource.getContents().add(itSolution);
try {
resource.save(Collections.EMPTY_MAP);
} catch (IOException e) {
e.printStackTrace();
pa
ge
pa
ge
pa
ge
pa
ge
Document Page
9UML MODELING AND PROGRAMMING WITH EMF
}
}
}
Client:
Request:
User Management:
Consultant:
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
10UML MODELING AND PROGRAMMING WITH EMF
Payment:
Document Page
11UML MODELING AND PROGRAMMING WITH EMF
Bibliography:
Horvath, A., Rath, I. and Starr, R.R., 2015. Massif-the love child of Matlab Simulink and
Eclipse. EclipseCon NA.
Kogel, S. and Tichy, M., 2018. A Dataset of EMF Models from Eclipse Projects.
chevron_up_icon
1 out of 12
circle_padding
hide_on_mobile
zoom_out_icon
logo.png

Your All-in-One AI-Powered Toolkit for Academic Success.

Available 24*7 on WhatsApp / Email

[object Object]