Thursday, October 3, 2019

Content Management Application on Cloud Platform

Content Management Application on Cloud Platform ABSTRACT The aim of the project is to develop a versatile Content Management application on cloud platform that serves common business purpose of ZTE Telecom Pvt. Ltd. With increasing numbers of orders and product enquiries, the company experiences a few problems such as difficulty in managing the content effectively and in a secure manner so that the user has a wonderful experience from purchase to payment. The project also comprises of a Data Migration application based on Dot Net technology. The Data Migration application has been developed to be integrated with the ZTE Content Management application on the cloud ensuring high security of the data being migrated. The main focus of the project is to provide security to the user in such a manner that data confidentiality, accessibility and authenticity is ensured. The security has been enforced such that the user will receive mails on his registered email Id on successive registration, placement of a new order and successful transaction .An email from the admin would be automatically sent to the user when any change is made in the order status placed by the user. The administrator has the power of tracking down the activities of various users , generate reports based on a weekly or monthly basis , generating dashboard reports , create workflows and approve processes and has full control over who can access which data. CHAPTER 1 INTRODUCTION 1.1 ORGANIZATION OVERVIEW ZTE was originally founded as Zhongxing Semiconductor Co. Ltd. in Shenzhen, China in 1985.ZTE Telecom India Private Limited is a Chinese multinational telecommunication corporation and its head office is located in Shenzhen, China. It is a core product MNC whose main products are mobile phones, data telecommunications , wireless , access , exchange and optical transmission gear , telecommunications software. ZTE was the first Chinese corporation to ascertain the ISO 27001 ISM system successfully in 2005. It is one of the top ten largest smart phone manufacturers worldwide and amongst the top five in its home market. ZTE aspires to be a leader in global communication and provide satisfactory products and services to its worldwide clients and customers. 1.2 PROJECT Overview ZTE CMS is a secure content management system developed on Salesforce platform to meet the data management needs of ZTE. In order to be more productive in order processing, ZTE Telecom Pvt. Ltd. Requires a solution which can facilitate their current way of working with the use of cloud computing technology and software so that it can be accessed by all its branches all over the world. With a large number of orders it is extremely important for ZTE to manage the orders in an effective and efficient manner. It takes a large amount of time to tackle the complaints, track activities and generate reports. Hence, this system has been designed with the aim to provide a solution to these problems. ZTE Telecom needs an effective administrative system that should be built to suit their organizational demands. There exists no readymade system that meets the complete requirement set of the organization. The system is primarily designed to deal with the sales process of the company but in future, will possess the ability to integrate and extend to other processes such as suppliers. 1.3 Purpose a.There is a need of a data management system which provides effective management as well as ensuring security of the data. b. User can register, login , view products , create an order. c. The user is informed through email whenever any change is made to the order status placed by him. d. The complaints can be easily tackled so that the customer has a satisfactory experience during any purchase from ZTE. e. The administrator must have full control over the control flow of the whole process and must be able to monitor the activities and generate records. f. There is also the need for a data migration application which has to be integrated with the Salesforce app so that the data can be uploaded on the cloud with the desktop application. This also serves as a shortcut for this whole project. 1.4 Scope of Project Scope of this project is to investigate and design a solution which can facilitate ZTE in performing their daily tasks, improving efficiency, and helping them to be more productive and secure.This project will provide a solution through which ZTE can easily manage, handle and generate all required information when needed. It will help them to manage order details, historical data, manage data queries and also is producing the documents of reports and dashboards weekly or monthly accordingly. This solution will help ZTE in reducing effort spend on managing orders. Chapter – 2 Requirements The Secure Content Management and Data Migration on Cloudproject is a combination of software and hardware components, the focus of which is to provide security to the services related to sales and purchase and also to secure the data being migrated between the systems. 2.1 HARDWARE REQUIREMENTS Group of computers minimum Pentium III 512 megahertz (MHz) or faster processor 128 MB RAM Routers and switches. Internet Connection 2.2 SOFTWARE REQUIREMENTS Windows 95/98/2000/NT/ME/XP/Vista/Seven Antivirus 2.3 FUNCTIONAL REQUIREMENTS System must be capable of adding/modifying customer. Customer must be able to outlook his/her details only. Customer must be able to outlook his/her details only. Customer must be able to see his/her order history. Each customer must be able to view placed order status. Customer must receive a mail for new registration. Customer must receive a mail for new order and transaction process. The admin must be able to change the status of the order between order executions. The system must guarantee secure access to the stored data, managing the permissions according to the user profile. System must support easy addition of functionalities and enhancements. 2.4 NON-FUNCTIONAL REQUIREMENTS System shall be accessible from anywhere in the world. System connectivity with the internet. 2.5 REQUIREMENT ANALYSIS 1)Salesforce Salesforce.com is a cloud computing and SaaS(Software as a Service) provider headquartered in San Francisco. The company was founded in March 1999 and is well known for its CRM (Customer Relationship Management) product which comprises of Work.com, Sales cloud, Force.com ,Marketing cloud ,Service cloud and Chatter. Figure 1 Overview of Salesforce Services provided: AppExchange Chatter Dashboards and Reports Email Campaigns , Leads and Opportunities Salesforce uses MVC architecture for providing better performance to its consumers where: M: Model V: View C: Controller Model: It represents the data and the schema which are utilized by the Salesforce to completely represent the system. In Salesforce, we can assume that the sObjects act as models as every entity in salesforce is mapped to some sObjects. It notifies its associated views and controllers when there has been a change in its state. View: Aviewrequests from the model the information that it needs to generate an output representation. It focuses on how the schema and data is represented.Visualforce is used to present the data to users. Controller: Acontrollercan send commands to its associated view to change the view’s presentation of the model (e.g., by scrolling through a document). It can also send commands to the model to update the model’s state (e.g., editing a document). Fig: MVC Architecture Figure 2 Types of Licenses 2) APEX Apex is an object oriented programming language for development on Force.com platform and the calls can be made to the Force.com API. Apex helps in adding business logic to the events in a system making use of button clicks, writing VisualForce pages and apex code can be initiated through triggers. Apex is a strongly-typed, object-oriented programming language that lets you centralize and execute flow and transaction control statements on the Force.com platform in conjunction with application calls to Force.com à ¢Ã¢â€š ¬Ã¢â‚¬ ¹APIs. Using syntax that looks like Java and acts like database stored procedures, Apex lets you add powerful custom business logic to most system events, including button clicks, related record updates, and Visualforce pages. Web service requests and database triggers on objects can also initiate the execution of Apex code. As a language, Apex is: Integrated Apex provides built-in support for common Force.com platform idioms, including: †¢ Data manipulation language (DML) calls, such as INSERT, UPDATE, and DELETE, that include built-in DmlException handling †¢ Inline Salesforce Object Query Language (SOQL) and Salesforce Object Search Language (SOSL) queries that return lists of sObject records †¢ Looping that allows for bulk processing of multiple records at a time †¢ Locking syntax that prevents record update conflicts †¢ Custom public Force.com API calls that can be built from stored Apex methods Apex Use Apex if you want to: †¢ Create Web services. †¢ Create email services. †¢ Perform complex validation over multiple objects. †¢ Create complex business processes that are not supported by workflow. †¢ Create custom transactional logic (logic that occurs over the entire transaction, not just with a single record or object.) †¢ Attach custom logic to another operation, such as saving a record, so that it occurs whenever the operation is executed, regardless of whether it originates in the user interface, a Visualforce page, or from SOAP API. Figure 3: Programming elements in Apex Apex has the following types of collections: †¢ Lists (arrays) †¢ Maps †¢ Sets A list is a collection of elements, such as Integers, Strings, objects, or other collections. Use a list when the sequence of elements is important. You can have duplicate elements in a list. List My_List = new List(); List list_name [= new List();] | [=new List{value [, value2. . .]};] | ; A set is a collection of unique, unordered elements. It can contain primitive data types, such as String, Integer, Date, and so on. It can also contain more complex data types, such as sObjects. Use the following syntax for creating a set: Set set_name [= new Set();] | [= new Set{value [, value2. . .] };] | ; The following example creates a set of String. The values for the set are passed in using the curly braces {}. Set My_String = new Set{a, b, c}; A map is a collection of key-value pairs. Keys can be any primitive data type. Values can include primitive data types, as well as objects and other collections. Use a map when finding something by key matters. You can have duplicate values in a map, but each key must be unique. Map map_name [=new map();] | [=new map {key1_value => value1_value [, key2_value => value2_value. . .]};] | ; The following example creates a map that has a data type of Integer for the key and String for the value. In this example, the values for the map are being passed in between the curly braces {} as the map is being created. Map My_Map = new Map{1 => a, 2 => b, 3 => c}; Visualforce Visualforce consists of a tag-based markup language that gives developers a more powerful way of building applications and customizing the Salesforce user interface. With Visualforce you can: †¢ Build wizards and other multistep processes. †¢ Create your own custom flow control through an application. †¢ Define navigation patterns and data-specific rules for optimal, efficient application interaction. Enable Visualforce Development Mode Development mode embeds a Visualforce page editor in your browser that allows you to see code and preview the page at the same time. Development mode also adds an Apex editor for editing controllers and extensions. 1. Click Your Name > Setup > My Personal Information > Personal Information. 2. Click Edit. 3. Select the Development Mode checkbox, then click Save. Your Stuff Here Step 2: Add Additional Components You’ve created a page, used the component, and changed its behavior. You’ll typically want to use additional components that supply a lot more functionality. Visualforce comes with a few dozen built-in components, and you can install and build your own components to extend this set. In this lesson you’ll learn how to locate them, and use one. 1. Click the Component Reference link in the Page Editor. A help popup window displays with all available components. 2. Click . A description of what the component does, and what attributes you can add to change its behavior displays in the Component Details tab. 3. Click the Usage tab to see an example of how to use the component. You’ll notice that the component is often used with the component. Click to learn more about that component. In general, you’ll dip into the component reference whenever you need to. You’ll soon learn what the major components do—and while some of them take a large number of attributes, in practice you will only use a handful. Now add both components to your page. We’re going to go a little faster here—see if you can do this without looking at the final code below: 4. Within the component, add an component with a title attribute set to A Block Title. 5. Within the component, add an component, with its title attribute set to A Section Title. 6. Within the , add some text, like Im three components deep! 7. Click Save. Your final code will look something like this: Im three components deep! Step 3: Add Nested Components Im three components deep! This is another section. What are the Limitations of Apex? Apex radically changes the way that developers create on-demand business applications, but it is not currently meant to be a general purpose programming language. As of this release, Apex cannot be used to: †¢ Render elements in the user interface other than error messages †¢ Change standard functionality—Apex can only prevent the functionality from happening, or add additional functionality †¢ Create temporary files †¢ Spawn threads Features of Apex: Apex is integrated: Apex provides built in support for DML calls, SOQL and SOSL queries, looping , locking syntax and making custom API calls. Apex is easy to use: Apex resembles Java and the syntax and semantics are quite familiar and thus the code is easy to write and understand. Apex is data focused :Apexis designed to combine multiple queries and DML statements into a single unit of work on Force. com. Apex is rigorous :Apex is a strongly typed language and stores all custom objects , fields , class dependencies in metadata so that active apex code can make use of it and there is no risk of deletion. Apex is hosted: Apex is implemented and controlled completely by Force.com platform. Apex is multitenant aware :Apexruns in a multitenant environment and specially designed to help against runaway code. Apex is automatically upgradable :No separate changes have to be made to Apex when the system is upgraded ; it gets updated automatically with the system. Apex is easy to test :Apex provides built in support for unit testing and thus you can test if all your classes and objects are working accordingly before putting your app in the SendBox. 3) MICROSOFT VISUAL STUDIO 2010 It is an IDE {Integrated Development Environment} by Microsoft. It is used to develop programs for Windows as well as websites and web services. It supports different programming languages. Two types of applications can be built using VB.NET: VB.NET has various important features: It is an object oriented language and supports inheritance. It is type safe and supports exception handling. Other features are method overriding, overloading, constructors with parameters, multithreading etc. Events in VB.NET: Events are defined by using the Event keyword. Chapter -3 Overview of current working The Secure Content Management and Data Migration on Cloud is managing all customers, orders, and transactions with the help of a Content Management application implemented on the Salesforce using the Apex programming language. The objects involved are as following: User Product Order Order Detail Transaction Complaint The process of the Secure Content Management is as follows: 3.1 User Registration This step involves the registration of the new customer requiring the relevant information. When the registration is successfully done, then a mail is triggered to the customer on its Email Id which contains its Username and Password which the user requires while login. 3.2 Login Once the customer login into its account, a User Id is being allotted to him which is required in the application for various purposes. 3.3 Order This step involves the following sub Processes: Initiation of Order This step involves receiving order from customer selecting the products from various products available and also in stock. While ordering, an Order Id is being generated on each order and is provided to the customer for its record basis or for any query . Order List This tab views all the orders list which was being placed by the customer along with their Order Id, Product being ordered and the Order amount and quantity. Order Info This functionality performs the function of finding the status of the order being placed by the customer based on the Order Id. 3.4 Order Trigger A trigger is being implemented on the Order object such that when any order is being placed, a mail is received by the customer containing the Order Id, Status, Amount and other relevant information. 3.5 Transaction While the order is being placed the customer create a new transaction which generates a transaction Id and sends the request to the bank for further process. It is supposed that when the acknowledgement is being received from the bank, the admin updates the status of the Order of the customer and a mail will be received by the customer related to the successful transaction. It also contains the list of all the transaction and also the transaction search function. 3.6 Complaint If the customer is having any complaint related to the company or the product or any service, then the customer can file a complaint in this section to the authority and a complaint Id will be provided to him for any query or search. The complaint will be send to the respective member of the company which will perform the necessary actions. 3.7 Generate Bill Once the order is being completed, a bill will be generated containing all the necessary information required by the customer. The system also has the additional functionality: 1. The administrator has full control over the system and has the authority of keeping the information secure by deciding data accessibility based on roles and permissions 2. The administrator can track all the activities happening on the system. 3. Dashboard reports can be generated in order to gain graphical insight of the data. 4. Leads and opportunities can be managed which help in the growth of the business. 5. Automatic mails are sent to the user on creation of an account, placement of an order, and on any change in the order status. 6. Workflows and approval processes can be created within the company for the approval required on things. 7. A data migration application has been designed using VB.NET which is integrated with the Salesforce app and helps in migrating data to the cloud through this desktop application. The whole process is secured by generating a unique security token. 1

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.