A Conceptual Framework to analyze UML notations using SaaS : U-Code Generation



Similar documents
A Proposed Secured Cost-Effective Multi-Cloud Storage in Cloud Computing

Secured Storage of Outsourced Data in Cloud Computing

EFFICIENT AND SECURE DATA PRESERVING IN CLOUD USING ENHANCED SECURITY

Development of enhanced Third party Auditing Scheme for Secure Cloud Storage

Cloud Data Storage Services Considering Public Audit for Security

Sharing Of Multi Owner Data in Dynamic Groups Securely In Cloud Environment

How To Make A Secure Storage On A Mobile Device Secure

Privacy preserving technique to secure cloud

Enable Public Audit ability for Secure Cloud Storage

Index Terms: Cloud Computing, Third Party Auditor, Threats In Cloud Computing, Dynamic Encryption.

Data Integrity for Secure Dynamic Cloud Storage System Using TPA

Keywords-- Cloud computing, Encryption, Data integrity, Third Party Auditor (TPA), RC5 Algorithm, privacypreserving,

An Efficient Data Correctness Approach over Cloud Architectures

Third Party Auditing For Secure Data Storage in Cloud through Trusted Third Party Auditor Using RC5

How To Secure Cloud Computing, Public Auditing, Security, And Access Control In A Cloud Storage System

IMPLEMENTATION CONCEPT FOR ADVANCED CLIENT REPUDIATION DIVERGE AUDITOR IN PUBLIC CLOUD

Data management using Virtualization in Cloud Computing

ADVANCE SECURITY TO CLOUD DATA STORAGE

SECURE CLOUD STORAGE PRIVACY-PRESERVING PUBLIC AUDITING FOR DATA STORAGE SECURITY IN CLOUD

EFFICIENT AND SECURE ATTRIBUTE REVOCATION OF DATA IN MULTI-AUTHORITY CLOUD STORAGE

Efficient and Secure Dynamic Auditing Protocol for Integrity Verification In Cloud Storage

Security Risk Assessment of Software Architecture

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

A Survey on Security Issues and Security Schemes for Cloud and Multi-Cloud Computing

AN EXPOSURE TO RELIABLE STORAGE SERVICES IN CLOUD COMPUTING

Expressive, Efficient, and Revocable Data Access Control for Multi-Authority Cloud Storage

Keywords Cloud Storage, Error Identification, Partitioning, Cloud Storage Integrity Checking, Digital Signature Extraction, Encryption, Decryption

Secure Data Sharing in Cloud Computing using Hybrid cloud

International Journal of Advanced Research in Computer Science and Software Engineering

Secure Cloud Storage: A framework for Data Protection as a Service in the multi-cloud environment

Enhancing Data Security in Cloud Storage Auditing With Key Abstraction

Customer Security Issues in Cloud Computing

Efficient Remote Data Possession Checking In Critical Information Infrastructures Ensuring Data Storage Security In Cloud Computing

RIGOROUS PUBLIC AUDITING SUPPORT ON SHARED DATA STORED IN THE CLOUD BY PRIVACY-PRESERVING MECHANISM

CONSIDERATION OF DYNAMIC STORAGE ATTRIBUTES IN CLOUD

N TH THIRD PARTY AUDITING FOR DATA INTEGRITY IN CLOUD. R.K.Ramesh 1, P.Vinoth Kumar 2 and R.Jegadeesan 3 ABSTRACT

SURVEY ON: CLOUD DATA RETRIEVAL FOR MULTIKEYWORD BASED ON DATA MINING TECHNOLOGY

Erasure correcting to enhance data security in cloud data storage

Third Party Auditor: An Integrity Checking Technique for Client Data Security in Cloud Computing

International Journal of Advanced Research in Computer Science and Software Engineering

A NOVEL APPROACH FOR MULTI-KEYWORD SEARCH WITH ANONYMOUS ID ASSIGNMENT OVER ENCRYPTED CLOUD DATA

An Efficient Cost Calculation Mechanism for Cloud and Non Cloud Computing Environment in Java

Distributed Attribute Based Encryption for Patient Health Record Security under Clouds

International Journal of Advance Research in Computer Science and Management Studies

SECURE AND TRUSTY STORAGE SERVICES IN CLOUD COMPUTING

Security and Privacy issues in Cloud Computing

Data Grid Privacy and Secure Storage Service in Cloud Computing

Enabling Public Auditability, Dynamic Storage Security and Integrity Verification in Cloud Storage

International Journal of Computer Engineering and Technology (IJCET), ISSN (Print), INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING &

Cloud Server Storage Security Using TPA

An Approach towards Automation of Requirements Analysis

Privacy-Preserving Public Auditing for Secure Cloud Storage

AN ENHANCED ATTRIBUTE BASED ENCRYPTION WITH MULTI PARTIES ACCESS IN CLOUD AREA

Secure Way of Storing Data in Cloud Using Third Party Auditor

An Automatic Tool for Checking Consistency between Data Flow Diagrams (DFDs)

A Survey on Secure Storage Services in Cloud Computing

IMPLEMENTATION OF NETWORK SECURITY MODEL IN CLOUD COMPUTING USING ENCRYPTION TECHNIQUE

A Road Map on Security Deliverables for Mobile Cloud Application

Authorized Auditing of Big Data Stored on Cloud with Auditability Aware Data Scheduling

PRIVACY-PRESERVING PUBLIC AUDITING FOR SECURE CLOUD STORAGE

Verification of Data Reliability and Secure Service for Dynamic Data in Cloud Storage

Secure Collaborative Privacy In Cloud Data With Advanced Symmetric Key Block Algorithm

Mona: Secure Multi-Owner Data Sharing for Dynamic Groups in the Cloud

Secure semantic based search over cloud

SECURE AND EFFICIENT PRIVACY-PRESERVING PUBLIC AUDITING SCHEME FOR CLOUD STORAGE

PRIVACY-PRESERVING PUBLIC AUDITING FOR DATA STORAGE SECURITY IN CLOUD COMPUTING

SECURITY STORAGE MODEL OF DATA IN CLOUD Sonia Arora 1 Pawan Luthra 2 1,2 Department of Computer Science & Engineering, SBSSTC

Software Architecture Document

Security Issues with Implementation of RSA and Proposed Dual Security Algorithm for Cloud Computing

Secrecy Maintaining Public Inspecting For Secure Cloud Storage

Improving data integrity on cloud storage services

International Journal of Advance Research in Computer Science and Management Studies

Horizontal IoT Application Development using Semantic Web Technologies

SHARED DATA & INDENTITY PRIVACY PRESERVING IN CLOUD AND PUBLIC AUDITING

OVERVIEW OF SECURITY ISSUES IN CLOUD COMPUTING

An Efficient Security Based Multi Owner Data Sharing for Un-Trusted Groups Using Broadcast Encryption Techniques in Cloud

A Survey on Privacy-Preserving Techniques for Secure Cloud Storage

PRIVACY ASSURED IMAGE STACK MANAGEMENT SERVICE IN CLOUD

Scalable and secure sharing of data in cloud computing using attribute based encryption

MUTI-KEYWORD SEARCH WITH PRESERVING PRIVACY OVER ENCRYPTED DATA IN THE CLOUD

PRIVACY PRESERVING AND BATCH AUDITING IN SECURE CLOUD DATA STORAGE USING AES

Transcription:

A Conceptual Framework to analyze UML notations using SaaS : U-Code Generation R.Lalitha 1, Dr.B.Latha 2, Dr.G.Sumathi 3 1 Prof. & Head, 2 Prof. & Head, 3Prof. & Head Dept. Of CSE, Dept. Of CSE, Dept. Of IT Rajalakshmi Institute of SaiRam Engineering College Sri Venkateswara college of Technology, Chennai & Chennai,Anna University, Engineering, Anna University, Research Scholar, Anna University India India IndiaLalitha.sadha@gmail.com sivasoorya2003@yahoo.com gsumathi@gmail.com Abstract Software Project development is a real challenge in Software engineering. Forward engineering a concept may be misinterpreted in several ways by different people if the diagrams used for analysis are not clear. To overcome these ambiguities, it has been proposed to develop a SaaS framework which provides additional information about the use case diagrams that can be posted in the framework. This helps to provide a uniform meaning and understanding to any user of the framework. Also, it provides a standard format for presenting the use case scenarios. Index Terms SaaS, forward engineering, framework proposed framework becomes a generalized and a common framework for identifying and generating codes for modules for any type of use case diagrams. II RELATED WORKS There are few software tools available in the software industry for the purpose of forward engineering and generating an automated code. But, class diagrams are generally used for code generation. For example, consider a class diagram for student and college library. I. INTRODUCTION Software Project development uses all the major software engineering activities. Right from the era of structured or procedural programming, forward engineering methodology has been used for a long time to develop and design code. Forward engineering [17] denotes the way or style of developing the program code from the diagrams like flow chart, algorithms, use case diagrams etc. Reverse engineering as the name implies the way of representing the diagrams from the code available. After the introduction of objects and classes in programming, the unified modeling notations were in greater use to represent the scenarios of project. The Unified modeling language uses several diagrams like use case diagrams, class diagrams, sequence diagrams, component diagram. Though all these diagrams are used in analysis and design stages of software project development, the automatic code generation has been done so far based on class diagrams. [19]. Generally, the use case diagrams are used in identifying the modules and in detail analysis of each module. But there are cases where each of these use are misinterpreted and they are not properly used in the development process. Hence, in this paper, we propose architecture for easier understanding of the use cases and generate the skeletal code for modules based on use case diagrams. This is extended as SaaS and as to be implemented in a Cloud service. Thus, this Fig 1 Class Diagram This class diagram shows that it is one-to-n relation between the two classes. Also, while clicking on the class diagram, a skeletal code can be generated for example in c++ as follows: Class student Char sname; Int rollno; Char dept; Void adddetails() Cout<< enter student details Cin>>sname 82

These codes once executed may be used to store the details in a database. Also, this class diagram also helps to create a database by converting the attributes as fields in a database. This is the great benefit of class diagrams. But, the use case diagrams are used for analysis and design purpose in software development. Generally, a master use case diagram shows the overall picture of major processes involved in software development. Each use case in a master user case diagram should be considered as a module. Based on that, sub modules can be generated and the use cases are drawn accordingly. But, they are not used for automatic code generation. In this paper, we have proposed the idea of identifying the modules based on the descriptions given in use case diagrams. III U-CODE FRAMEWORK The use cases are those UML diagrams that show the relation between the actors and their responsibilities in project development [4].But, as the text inside a use case is in general English it can be written in any form with or without any grammar. It can be single word, group of words or sentence with or without proper meaning. Hence, it may be interpreted in different ways [11 by the programmers and analysts etc. For example, consider the following use case scenario: development activities. The framework U-code defined by uses an advanced version of use case diagrams. It contains a pair of text boxes in each line. The first box represents the verb form and the second text box contains the noun form. Each use case pop out a box with numbers 1, 2, 3 etc. where the numbers will be dynamically generated as per the requirements of the developer. Each number again contains a pair of text boxes. Again, the first box represents the verb form and the second one represents the noun form. Once they are filled for each use case, they will be automatically stored in an editor eg. notepad. In the editor, based on the verb and noun forms, a skeletal code will be generated for each module. Based on the class diagram and the relationship between the classes a powerful source code can be generated. This will greatly reduce the initial work of the programmer and makes the program development easier. This is diagrammatically represented as follows: Here, the use case contains a general word application form. It is connecting the student with the library. But, it is not clear whether it means to issue the application or submit the application or fill the application form or reject the application form. As there is no protocol to describe how to write in a use case it may be understood in any way. While designing a module, each programmer will develop four different types of modules based on the meaning they have understood from the use case diagram [16]. These confusions occur because the use case diagram drawn here is not semantically correct but syntactically correct. Hence, it is felt that a framework can be developed to get more productive and relevant information related to project IV U-CODE CREATION The verb and noun together forms the module name. For example, in this scenario the verb is issue and the noun part is Application. These words will be stored in a database. The U-code will automatically open an editor. As a trial version, Java is considered as the programming language for development. So, following initial lines will be automatically written in the editor: Public static void main() Void issue application() 83

Int application no; Char name; Date issuedate; Void function1() Void function2() The variable names can be obtained from the corresponding class diagrams. Also, the functions can be generated based on the contents given by the developer in the pop up cases. Thus, any number of modules can be generated based on the number of use cases given by the programmer. V DEPLOYMENT OF U-CODE AS SAAS This U-code is not for any single application. This can be made generally assessable for any developer and for any type of application by implementing this U-code in the cloud environment as SaaS. SaaS which is called as Software as a Service is also referred as On-Demand Service. It is a part of cloud computing as Platform as a service, infrastructure as a service etc. The U-Code architecture is as follows: Fig. 4 U-Code Architecture The U-code architecture automatically generates following code in java from the use case diagram as follows: 84

automatically generated. Also, as implemented in cloud, it becomes SaaS and can be used by anyone for a n y t ype o f software. The t i m e t a k e n f o r developing the software is also minimized. VII CONCLUSIONS Fig.5 U-code generation VI BENEFITS OF U-CODE AS SaaS Generally, the cost of software is calculated based on the following. It can be charged based on the number of use cases given by the user in the cloud. Generally, the cost estimation of software [17] based on use cases are as follows: LOC Estimate = N x LOC avg + [sa/sh-1]+ [Pa/Pb-1] x Loc adjust Where N LOC avg LOC Sa Sb Pa Ph actual number of use cases historical average LOC per use case for The subsystem represents an adjustment based on n% Of LOC avg where n is defined locally Represents the difference between the Project and the average projects actual scenarios per use case actual scenarios per use case for the Type of sub system Actual pages per use case average pages per use case for the type Of sub system If t h e traditional programming is followed, the cost of development will be more because for each line code, cost is involved. In the U-Code generation, the cost may be considerably reduced as the part of code is In this paper we have not disused about the semantic meaning of the nouns and verbs given in the use cases. In future, it should be analysed. Also, as a trial b a s i s Java language is c o n s i d e r e d as t h e language for development of automatic code using the proposed U-code architecture. This can further be further extended to any programming language. This paper after full implementation in the cloud will really be helpful for the programmers in software development. Nearly, 2 0 % of the t i m e taken in software development is spent in explaining the concept and interpreting the diagrams. This may be done by different way by different people. The proposed U-code as SaaS makes forward engineering a product much easier. VIII REFERENCES [1] Amazon.com, Amazon s3 availablity event: July 20, 2008, Online at http://status.aws.amazon.com/s3-20080720.html, 2008. [2] A Mordern Language for Mathematical Programming, Online at http://www.ampl.com. [3] M. Arrington, Gmail Disaster: Reports of mass email deletions, Online at http: // www.techcrunch.com/2006/12/28/gmaildisasterreports-ofmass-email-deletions/, December 2006. [4] Basu A, Vaidya J, Kikuchi H, Dimitrakos T(2011) Privacy-preserving collaborative filtering for the cloud. In Proceedings of the 3rd IEEE International Conference on Cloud Computing Technology and Science (Cloudcom), Athens, Greece [5] P. S. Browne, Data privacy and integrity: an overview, In Proceeding of SIGFIDET 71 Proceedings of the ACM SIGFIDET (now SIGMOD), 1971. [6] A. Cavoukian, Privacy in clouds, Identity in the Information Society, Dec 2008. [7] J. Du, W. Wei, X. Gu, T. Yu, RunTest: assuring integrity of dataflowprocessing in cloud computing infrastructures, In Proceedings of the 5thACM Symposium on Information, Computer and Communications Security (ASIACCS 10), ACM, New York, NY, USA, 293-304. [8] R. Gellman, Privacy in the clouds: Risks to privacy and confidentiality from cloud computing, Prepared for the World Privacy Forum, online at 85

http: //www.worldprivacyforum.org/pdf/wpf Cloud PrivacyReport.pdf, Feb 2009. [9] The Official Google Blog, A new approach to China: an update, online at http://googleblog.blogspot.com/2010/03/newapproach-to-chinaupdate html, March 2010. [10] N. Gruschka, M. Jensen, Attack surfaces: A taxonomy for attacks on cloud services, Cloud Computing (CLOUD), 2010 IEEE 3rd International Conference on, 5-10 July 2010. [11] W. Itani, A. Kayssi, A. Chehab, Privacy as a Service: Privacy-Aware Data Storage and Processing in Cloud Computing Architectures, EighthIEEE International Conference on Dependable, Autonomic and Secure Computing, Dec 2009. [12] M. Jensen, J. Schwenk, N. Gruschka, L.L. Iacono, On Technical Security Issues in Cloud Computing, IEEE International Conference on Cloud Computing, (CLOUD II 2009), Banglore, India, September 2009, 109-116. [13] J. Kincaid, MediaMax/TheLinkup Closes Its Doors, Online at http://www.techcrunch.com/2008/- 7/10/mediamaxthelinkup-closes-itsdorrs/, July 2008. [14] B. Krebs, Payment Processor Breach May Be Largest Ever,Online at http:/ /voices.washingtonpost.com/securityfix/2009/01/ payment processor breach may b.html, Jan, 2009. [15] M. Dijk, A. Juels, On the Impossibility of Cryptography Alone for Privacy-Preserving Cloud Computing, HotSec 2010. [16] P. Mell, T. Grance, Draft NIST working definition of cloud computing, Referenced on June. 3rd, 2009, Online athttp://csrc.nist.gov/groups/sns/cloudcomputing/index.html, 2009. [17] P. F. Oliveira, L. Lima, T. T. V. Vinhoza, J. Barros, M. M edard, Trusted storage over untrusted networks, IEEE GLOBECOM 2010, Miami, FL.USA. [18] Pressman, Software Engineering, Sixth Edition [19] A. Shamir, How to share a secret, Commun. ACM 22, 11(November 1979). [20] S. H. Shin, K. Kobara, Towards secure cloud storage, Demo for CloudCom2010, Dec 2010. [21] C. Wang, Sherman S.-M. Chow, Q. Wang, K. Ren, W. Lou, Privacy preserving public auditing for secure cloud storage, in InfoCom2010, IEEE,March 2010. 86