Theses and Dissertations
Permanent URI for this collectionhttp://ir.daiict.ac.in/handle/123456789/1
Browse
8 results
Search Results
Item Open Access Model Based Testing and Model Checking : An Efficient Combination(Dhirubhai Ambani Institute of Information and Communication Technology, 2023) Mishra, Rohit Ajaykumar; Tiwari, SaurabhThis thesis aims to combine MBT with model analysis to provide an overall frame-work for feedback-based model analysis. We have used an MBT tool, Graph-Walker, and a model checker, UPPAAL, for transformation, feedback, and analy-sis. GW2UPPAAL1is an existing tool that transforms the GraphWalker model intoUPPAAL timed automata and supports a combined analysis and testing process.The tool enables the automatic verification of reachability and deadlocks freedomproperties to exploit the results obtained from this analysis step to improve thetest model before generating and executing test cases on the system under test.However, based on model analysis results, the test engineer must manually cre-ate the new GraphWalker model, which may be time-consuming and error-prone.We have developed a hybrid approach (a.k.a. UPPAAL2GW) to transform theUPPAAL-derived model to GraphWalker to provide automated feedback of themodel checker to the MBT model, which helps the test engineer to use the modi-fied GraphWalker model for test case generation. We have evaluated the overallapproach of the toolchain by seeding mutations into the models created by indus-trial practitioners and verifying whether the tool provides automated feedbackto the test engineer. We have also used Graphviz to reflect changes in the MBTmodels before and after the modifications. Furthermore, we have integrated bothtools for automated analysis and feedback. The integration of GW2UPPAAL andUPPAAL2GW tools bridges the gap between MBT and model checking and en-sures the overall analysis and feedback for MBT test case generation.Item Open Access Ontology development and query execution for an agro-advisory system(Dhirubhai Ambani Institute of Information and Communication Technology, 2014) Mordiya, Chetankumar; Bhise, Minal; Chaudhary, SanjayIn agriculture domain, farmers have queries regarding crop, soil, climate, cultivation process, disease, and pest. They express their queries in a natural language which are usually answered by agriculture experts. Due to lake of access, distance or time, the expert is usually not present physically to answer all the queries of the farmers. Hence, the farmers may not understand clearly what the experts wanted to convey. In such situation, there is a possibility of communication gap between farmers and knowledge of agriculture experts. It is desirable to capture agriculture experts’ knowledge in a system that understands farmers’ queries appropriately and gives the recommendations for it. An Agro-Advisory System is developed to fulfil these requirements. It is acknowledged based system. The knowledge base is maintained in the form of ontology. Ontology is integrated with services developed for this system. Ontology contains cotton crop knowledge of Gujarat region. Farmers can ask their queries related to cotton crop cultivation by Android device and get recommendations to improve crop productivity. The system is able to send notification and alert to farmers. Thesis work includes development of ontology for the cotton crop model and corresponding SPARQL (Simple Protocol and RDF Query Language) queries are executed on RDF (Resource Description Framework) data. Simple, complex and reasoning based queries are identified during thesis work.Item Open Access Approach for scalability in software as a service(Dhirubhai Ambani Institute of Information and Communication Technology, 2013) Parekh, Deep Ashvinbhai; Chaudhary, SanjaySoftware as a Service (SaaS) is a software service delivery model. Software is centrally hosted on cloud infrastructure and delivered as a service through the Internet. Scalability is one of the major issues in SaaS. One of the ways to achieve scalability is to use proper caching mechanism. Memcached is a well known, high performance < key, value > distributed cache used for the Internet applications. High frequently used data and costly data (takes more time to decompress) is stored in memcached server node. Data is not persistent in memcached server node. The data is lost if memcached server node fails. In memcached server node, data is not durable. Durability of high frequently used data and costly data should be high. To achieve availability and durability of stored data is very difficult in pool of memcached server nodes. Frequency of data being accessed, data that takes more time to decompress and number of write operations in pool of memcached server nodes are the characteristics that needs to be considered in order to decide the durability of the data. To achieve high durability, data needs to be replicated among several memcached server nodes. Based on the term durability, data is replicated among several memcached server nodes. Data replication is done by memcacheS server node. MemcacheS server node acts as a central entity which supports read and write operations to memcached server nodes. In write operation, memcacheS server node creates replication of data in available memcached server nodes according to durability. When memcached client node needs data for particular key, it sends request to memcacheS server node. MemcacheS server node provides information of owner memcached server nodes. Memcached client node requests the data for particular key and gets the value of the data. Durable data storage provides high availability of the data. Performed set of experiments are based on the proposed approach. After failure of any memcached server node, value of stored data could be retrieved from other memcached server node with durability of data more than 1. The results indicate that, availability of data is increased, as it can be fetched from other memcached server nodes too. Durable data storage provides high availability of the data. The proposed approach. is helpful in dynamic web application and Software as a Service (SaaS) applications where time to satisfy millions of requests is critical issue.Item Open Access SQL-GQL inter-query translation for Google App engine datastore(Dhirubhai Ambani Institute of Information and Communication Technology, 2012) Kotecha, Shyam; Bhise, MinalOn demand services, usage based pricing, and scalability features of cloud computing has attracted many customers to move their applications into cloud. But different cloud service providers are using different standards & frameworks to host applications & data. Customers have to follow these standards and frameworks. When customer wants to migrate application and/or data to another cloud service provider, application code and database structure must be modified according to the standard of new cloud service provider. This modification is very costly and as a consequence, changing cloud service provider becomes difficult. This situation is called vendor lock-in in cloud. Focusing on database, complete database migration requires migration of data, database schema, and query. This thesis work concentrates on migration of query. Automation in migration process is achieved by translation algorithms. This thesis work introduces inter-query translation algorithms. These algorithms translate SQL (Structured Query Language) query and GQL (Google Query Language) query into each other. The implementation of these algorithms is demonstrated for MySQL Sakila databaseItem Open Access Transaction based verification of discrete wavelet transform IP core using wishbone transactor(Dhirubhai Ambani Institute of Information and Communication Technology, 2010) Patel, Birenkumar; Dubey, RahulVerification is major concern in product development life cycle. The number of human hours required writing a test bench and choice of verification approach is the major contributor in the Non Recurring Engineering (NRE) cost. There are too many techniques for verification. Register Transfer level (RTL) verification is too slow. Transaction based verification technique is used for faster verification of any Intellectual Property core. Transaction-based verification allows simulation and debug at the transaction level, in addition to signal or pin level. All possible transaction types between different modules in a system are created and systematically tested. It does not require detailed test benches with large vector. Device under test (DUT) operates at a binary stimulus level(e.g. Zeros and Ones). Test bench includes one model to define the transactions at a high level (e.g. READ) and another model to interpret transaction and translates them into the binary level. DUT is implemented in lower abstraction language like Verilog and test bench is created in higher abstraction language like C++. The Discrete Wavelet Transform’s (DWT) Intellectual Property (IP) core is used as a DUT. DWT is implemented by Lifting scheme based Daubechies 9/7 filter. Lifting scheme has an advantage over conventional convolution method like time complexity of operation. Wishbone transactor is designed for verification of IP core. Whole system is verified on ZeBu emulator. The same Wishbone transactor is used for verification of different Wishbone compatible IP core.Item Open Access Path complexity of maximum segment sum problem(Dhirubhai Ambani Institute of Information and Communication Technology, 2009) Mishra, Devesh; Amin, Ashok T.Various software complexity metrics have been proposed in literature. A program complexity measure called path complexity is proposed in [1]. Path complexity P(A,n) of an algorithm A is defined to be the number of program execution paths of A over all inputs of size n. It defines a partition of input space of program A into equivalence classes on the basis of different program execution paths. All the inputs belonging to an equivalence class are equivalent to each other in a sense that they follow same execution path. We present path complexity analysis of four different algorithms for one-dimensional maximum segment sum problem which shows that algorithms with different computational complexity may be equivalent to each other in their path complexity. We also present lower bounds on one dimensional as well as two dimensional maximum segment-sum problems. A different perspective and several observations on one dimensional problem are givenItem Open Access Improvement of tagged architecture for preventing software vulnerabilities(Dhirubhai Ambani Institute of Information and Communication Technology, 2008) Shah, Tejaskumar; Mathuria, Anish M.In spite of the many defense techniques, software vulnerabilities like buffer overflow, format string vulnerability and integer vulnerability is still exploited by attackers. These software vulnerabilities arise due to programming mistakes which allows security bugs to be exploited. Buffer overflow occurs when buffer is given more data than the capacity of it. Format string vulnerability arises when data supplied by attacker is passed to formatting functions as format string argument. Integer vulnerability occurs when program evaluates an integer to unexpected value due to integer overflows, underflows, truncation errors or signed conversion errors. The hardware based solution called tagged architecture protects a system against mentioned vulnerabilities. In tagged architecture, each memory byte is appended with one tag bit to mark data that comes from I/O. Whenever I/O supplied data is used to transfer control of a system or to access memory, an alert is raised and program is terminated. This thesis proposes a weakness of tagged architecture by finding false positives and false negatives on it. It also proposes the improvements to the tagged architecture to avoid found false positives on it. The prototype implementation of improved tagged architecture is done in SimpleScalar simulator. The SimpleScalar simulator is a architectural simulator. The security evaluation is done for tagged architecture and improved tagged architecture through benchmarks and synthetic vulnerable programs.Item Open Access Study of algebraic and state based testing techniques(Dhirubhai Ambani Institute of Information and Communication Technology, 2007) Praveen, Asim Rama; Kapoor, KalpeshSequential programs can be modeled as algebra or transitions on a state space. Whether a program is implemented according to its model is the question addressed by program testing. The thesis illustrates issues in constructing a finite test set from algebraic and state transition based specifications. Test hypotheses need to be formulated to generalise results of testing from a finite test set to the entire input domain of a program under test. It is demonstrated with examples that test hypotheses are constraints on program under test. Testing can lead to sound conclusions for the class of programs that satisfy the constraints. The theory proposed in [BGM91] is used to illustrate test selection from algebraic specifications. Z notation is used to express state transitions of a heap sort example that illustrates testing from state based specifications.