CO7207 Project: UML Modeling and Programming with EMF for IT Solutions
VerifiedAdded 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.

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:
UML Modeling and Programming with EMF
Name of the Student
Name of the University
Author’s auto:
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

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
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

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
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
⊘ This is a preview!⊘
Do you want full access?
Subscribe today to unlock all pages.

Trusted by 1+ million students worldwide

3UML MODELING AND PROGRAMMING WITH EMF
Task 2: Behavioral Model
2.a Use Case Diagram:
Figure 1: Use Case Diagram
(Source: Created by Author)
Task 2: Behavioral Model
2.a Use Case Diagram:
Figure 1: Use Case Diagram
(Source: Created by Author)
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

4UML MODELING AND PROGRAMMING WITH EMF
2.b Activity Diagram:
Figure 2: Activity Diagram
(Source: Created by Author)
2.b Activity Diagram:
Figure 2: Activity Diagram
(Source: Created by Author)

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)
Task 3: Structural Model
3.a Class Diagram:
Figure 3: Class Diagram of IT Solution Provider System
(Source: Created by Author)
⊘ This is a preview!⊘
Do you want full access?
Subscribe today to unlock all pages.

Trusted by 1+ million students worldwide

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;
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;
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

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;
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;

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
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
⊘ This is a preview!⊘
Do you want full access?
Subscribe today to unlock all pages.

Trusted by 1+ million students worldwide

9UML MODELING AND PROGRAMMING WITH EMF
}
}
}
Client:
Request:
User Management:
Consultant:
}
}
}
Client:
Request:
User Management:
Consultant:
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

10UML MODELING AND PROGRAMMING WITH EMF
Payment:
Payment:

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.
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.
⊘ This is a preview!⊘
Do you want full access?
Subscribe today to unlock all pages.

Trusted by 1+ million students worldwide
1 out of 12
Related Documents

Your All-in-One AI-Powered Toolkit for Academic Success.
+13062052269
info@desklib.com
Available 24*7 on WhatsApp / Email
Unlock your academic potential
Copyright © 2020–2025 A2Z Services. All Rights Reserved. Developed and managed by ZUCOL.