SoftPro Software Project Management Supportive Tool

Similar documents
Python Machine Learning

Module 12. Machine Learning. Version 2 CSE IIT, Kharagpur

Probabilistic Latent Semantic Analysis

Switchboard Language Model Improvement with Conversational Data from Gigaword

Rule Learning With Negation: Issues Regarding Effectiveness

A Case Study: News Classification Based on Term Frequency

CS Machine Learning

SINGLE DOCUMENT AUTOMATIC TEXT SUMMARIZATION USING TERM FREQUENCY-INVERSE DOCUMENT FREQUENCY (TF-IDF)

Linking Task: Identifying authors and book titles in verbose queries

Twitter Sentiment Classification on Sanders Data using Hybrid Approach

Visit us at:

Assignment 1: Predicting Amazon Review Ratings

AQUA: An Ontology-Driven Question Answering System

Reducing Features to Improve Bug Prediction

Lecture 1: Machine Learning Basics

Rule Learning with Negation: Issues Regarding Effectiveness

Human Emotion Recognition From Speech

Major Milestones, Team Activities, and Individual Deliverables

On-Line Data Analytics

Machine Learning and Data Mining. Ensembles of Learners. Prof. Alexander Ihler

Lecture 1: Basic Concepts of Machine Learning

Learning From the Past with Experiment Databases

Mining Association Rules in Student s Assessment Data

OPTIMIZATINON OF TRAINING SETS FOR HEBBIAN-LEARNING- BASED CLASSIFIERS

The 9 th International Scientific Conference elearning and software for Education Bucharest, April 25-26, / X

Word Segmentation of Off-line Handwritten Documents

ScienceDirect. A Framework for Clustering Cardiac Patient s Records Using Unsupervised Learning Techniques

Probability and Statistics Curriculum Pacing Guide

CS4491/CS 7265 BIG DATA ANALYTICS INTRODUCTION TO THE COURSE. Mingon Kang, PhD Computer Science, Kennesaw State University

CLASSIFICATION OF TEXT DOCUMENTS USING INTEGER REPRESENTATION AND REGRESSION: AN INTEGRATED APPROACH

Product Feature-based Ratings foropinionsummarization of E-Commerce Feedback Comments

Semi-supervised methods of text processing, and an application to medical concept extraction. Yacine Jernite Text-as-Data series September 17.

Speech Recognition at ICSI: Broadcast News and beyond

Machine Learning from Garden Path Sentences: The Application of Computational Linguistics

Axiom 2013 Team Description Paper

The Method of Immersion the Problem of Comparing Technical Objects in an Expert Shell in the Class of Artificial Intelligence Algorithms

MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE

Introduction to Ensemble Learning Featuring Successes in the Netflix Prize Competition

Universidade do Minho Escola de Engenharia

Automating the E-learning Personalization

Chinese Language Parsing with Maximum-Entropy-Inspired Parser

Artificial Neural Networks written examination

Physics 270: Experimental Physics

Software Maintenance

CLASSIFICATION OF PROGRAM Critical Elements Analysis 1. High Priority Items Phonemic Awareness Instruction

Multivariate k-nearest Neighbor Regression for Time Series data -

Iterative Cross-Training: An Algorithm for Learning from Unlabeled Web Pages

Rule-based Expert Systems

GACE Computer Science Assessment Test at a Glance

MULTILINGUAL INFORMATION ACCESS IN DIGITAL LIBRARY

Data Fusion Through Statistical Matching

Business Analytics and Information Tech COURSE NUMBER: 33:136:494 COURSE TITLE: Data Mining and Business Intelligence

Learning Methods for Fuzzy Systems

USER ADAPTATION IN E-LEARNING ENVIRONMENTS

Using Web Searches on Important Words to Create Background Sets for LSI Classification

Speech Emotion Recognition Using Support Vector Machine

Notes on The Sciences of the Artificial Adapted from a shorter document written for course (Deciding What to Design) 1

CS 446: Machine Learning

Applications of data mining algorithms to analysis of medical data

Parsing of part-of-speech tagged Assamese Texts

Predicting Student Attrition in MOOCs using Sentiment Analysis and Neural Networks

Longest Common Subsequence: A Method for Automatic Evaluation of Handwritten Essays

IT4305: Rapid Software Development Part 2: Structured Question Paper

WE GAVE A LAWYER BASIC MATH SKILLS, AND YOU WON T BELIEVE WHAT HAPPENED NEXT

Field Experience Management 2011 Training Guides

Laboratorio di Intelligenza Artificiale e Robotica

A Bayesian Learning Approach to Concept-Based Document Classification

Web as Corpus. Corpus Linguistics. Web as Corpus 1 / 1. Corpus Linguistics. Web as Corpus. web.pl 3 / 1. Sketch Engine. Corpus Linguistics

Developing True/False Test Sheet Generating System with Diagnosing Basic Cognitive Ability

Laboratorio di Intelligenza Artificiale e Robotica

National Literacy and Numeracy Framework for years 3/4

Interpretive (seeing) Interpersonal (speaking and short phrases)

The Importance of Social Network Structure in the Open Source Software Developer Community

Indian Institute of Technology, Kanpur

COMPUTER-ASSISTED INDEPENDENT STUDY IN MULTIVARIATE CALCULUS

Automatic document classification of biological literature

Cross Language Information Retrieval

21st CENTURY SKILLS IN 21-MINUTE LESSONS. Using Technology, Information, and Media

Analyzing sentiments in tweets for Tesla Model 3 using SAS Enterprise Miner and SAS Sentiment Analysis Studio

Evolutive Neural Net Fuzzy Filtering: Basic Description

Organizational Knowledge Distribution: An Experimental Evaluation

Objectives. Chapter 2: The Representation of Knowledge. Expert Systems: Principles and Programming, Fourth Edition

(Sub)Gradient Descent

Reduce the Failure Rate of the Screwing Process with Six Sigma Approach

Time series prediction

Nearing Completion of Prototype 1: Discovery

Learning Structural Correspondences Across Different Linguistic Domains with Synchronous Neural Language Models

AP Statistics Summer Assignment 17-18

A Neural Network GUI Tested on Text-To-Phoneme Mapping

AUTOMATED FABRIC DEFECT INSPECTION: A SURVEY OF CLASSIFIERS

Language Acquisition Fall 2010/Winter Lexical Categories. Afra Alishahi, Heiner Drenhaus

Learning Methods in Multilingual Speech Recognition

Implementing a tool to Support KAOS-Beta Process Model Using EPF

Unit 7 Data analysis and design

Generative models and adversarial training

Memory-based grammatical error correction

Prentice Hall Literature: Timeless Voices, Timeless Themes Gold 2000 Correlated to Nebraska Reading/Writing Standards, (Grade 9)

Active Learning. Yingyu Liang Computer Sciences 760 Fall

System Implementation for SemEval-2017 Task 4 Subtask A Based on Interpolated Deep Neural Networks

Graduate Program in Education

Transcription:

SoftPro Software Project Management Supportive Tool Gimhana Dewapura, Hasith Wijewickrama, Udara Dharmarathna, Marlon Gunathilake Tharindu Perera Department of Information Technology, Sri Lanka Institute of Information Technology (SLIIT), Malabe, Sri Lanka. gimhana888@gmail.com 1, wijewickramah@gmail.com 2, udara.thilinda1@gmail.com 3, marlondev90@gmail.com 4, tharindu.p@sliit.lk 5 Abstract This paper reports evidence that SoftPro, a supportive software project management tool based on information analyzing and predictions is more applicable solution to improve the business value of Software Project Management. In different kinds of applications, project management programs frequently have a learning curve that raise depends on the program s complexity. It use online management applications.the basic tasks of the project managers are learning how to use a program s major features. Therefore they should ensure that team members learn to use the components that they need to represent their task. As it takes a long period of time to plan a project, explain milestones, enter all the things in to the system and allocate tasks to each and every member in the team. Project management software cause amateur project managers to build up the projects which are more complex. As the result of above responsibilities we are willing to support to automate the project management role via this research.that is the criteria we are mainly focusing through this research. Automating the above each and every responsibilities can provide real value to software development projects. In this research, we will explore the value of automation and provide some guidance for automating aspects of the development process. As the result of this research we will be able to run any kind of software project without having a project manager role. Keywords : Ontology, Information Analyzing, Wordnet, Text Mining, Predictions, Classification, Clustering, Regression I..INTRODUCTION Our introducing automated project management systems gives high quality web applications for customers and it will help to ensure the durability too. Developing a web based automated project management system helps users to handle projects in a convenient way without the help of any project manager. The reliability and the robustness of the system offers lots of advantages to the user. This system which has been developed, which highly meets the standard and requirements set by the user. In here customer needs are basically the most important to understand, how to analyze the requirements, produce a design and go about development and testing so that the system you deliver is a high quality and does what the client wants it to do. In here we extract the customer requirement through the documents. Those requirements can be ambiguous or may be unnecessary requirements. Ontology engine will grab those requirements from the single lines which are in the documents. According to the inbuilt methodology ontology engine decide all the possible and essential requirements through the each and every diagrams without any duplications of the same requirements. As the output it will release the finalize unambiguous unique requirements according to the user priority.another important part of this system is automated prediction generator. One of the most important thing of the project management includes is risk management of the project. In lots of projects risks are analyzed and identified in a random way. This is a massive problem because unexpected risk can be arise.so for avoiding that we do the automated risk prediction for each and every activity. As well as this system will predict the time consuming and estimate the project cost. According to this automated software project management system can surprisingly increase performance, productivity and efficiency within an organization without a project manager. II. RESEARCH UNDERSTANDING At first we would get an understanding about research problem. To get started we will first define in clear statement: wha is the problem we want to explore in our research. Then we will find out the bigger scope of this research. Then we will discuss about the solution.

A. Explore the problem space Let s assume in the middle of a software project, project manager has to leave the company due to unavoidable circumstances. So what will happen next? If a new project manager has been recruited to the company, then it takes some time to him to adjust to the current progress of the project. So it is time wasting and sometimes it can reduce the success rate of the project or even get fail. So then companies need to rely When selecting a development team for a software project how can we measure they are the right people for the project. If unsuitable people assigned to handle the project ultimately project will become a mess. Company s reputation depends on the success of the project. Therefore, to complete a project successfully righteous people should be assigned to perform the tasks. And that is a major problem most of the IT companies are facing today[1]. B. Proposed Solution The main requirement of this research is to find a solution for problems associated with Requirement Gathering, Analyzing Documents and Prediction such as cost, deadline, risk management etc. When we consider about Analyzing Documents[2], Project manager or Requirement Annalistic go through the all the pages of the document to find specific area. This is time consuming and cost wasting way. If we were able to generate accurate predictions before starting a project, then we can get a clear understanding of the project. It is also helps to manage the project more precisely[3]. Regardless of the type of project you re beginning, one of the most important aspects of a good start is accurately forecasting when it will be completed. These are the limitations of the manual project management. We can avoid above mentioned limitations by using this product. III. IMPLEMENTATION SoftPro is a software project management supportive tool. System is segregated to 4 parts such as Project Team Prediction, Analyzing requirements inside the ontology engine, extracting information, summarizing, searching information and notification tracking[4]. The flow of the system goes ; inputs are taken to predict the team, then requirements document is taken from the client as an input to the requirements extractor, then the extracted requirements are sent to the ontology engine as an input, from the ontology engine the requirements are analyzed and the duplicated requirements will be removed, sent to the database, from the database, requirements will be matched with the predefined general tasks of a project, and those tasks will be segregated among the team members predicted from the team predictor[5]. Further, team could search information and summarize information from the information analyzer and summarrizer. Figure 1: Basic System Diagram A. Team Prediction Generating accurate predictions is always one step ahead to the success rate of a software project. By predicting and allocating right personnel to the right tasks software companies can reap the benefits of producing a standard software product. In order to achieve the aforementioned objective, a deep investigation is carried out upon similar non critical projects from software industries to get the parameters for selection of project personnel. Data mining, also popularly known as Knowledge Discovery in Database, refers to extracting or mining knowledge from large amounts of data. The sequences of steps identified in extracting knowledge from data are shown in this Figure. Figure 2: Predicting Data Various algorithms and techniques like Classification, Clustering, Regression, Artificial Intelligence, Neural

Networks, Association Rules, Decision Trees, Genetic Algorithm, Nearest Neighbor method etc., are used for data mining process [6]. Our Techniques and methods in data mining need brief mention to have better understanding. Here what we are going to use classification algorithms to master the prediction process. Under classification technique there are three major algorithms we are using here to predict the development team for a particular software project which are support vector machine, k nearest neighbors and naïve bayes. When considering SVM (support vector machine) it is a discriminative classifier formally defined by a separating hyperplane. In other words, given labeled training data (supervised learning), the algorithm outputs an optimal hyperplane which categorizes new examples. After creating the final data set it is given as an input to the system. From the finalized data set, only selected attributes are taken to pass as parameters to the algorithm. We are using two data sets for data mining purposes which are training and test data set. Separating data into training and testing sets is an important part of evaluating data mining models[7]. Typically, when you separate a data set into a training set and testing set, most of the data is used for training, and a smaller portion of the data is used for testing. Analysis Services randomly samples the data to help ensure that the testing and training sets are similar. By using similar data for training and testing, you can minimize the effects of data discrepancies and better understand the characteristics of the model. After the model has been processed by using the training set, you test the model by making predictions against the test set. Because the data in the testing set already contains known values for the attribute that you want to predict, it is easy to determine whether the model's guesses are correct. After that it will calculate the probabilities to happen. Here it is to the developers whether they are suited for the team or not. Finally, it will predict the whole team and update the database. B. Information Extraction All software development methods are based on requirements gathering. That is the first step of all development methods. For this function, client should separately provide requirements document to the SoftPro system. Then system will analyze the document and generate the text document by including the requirements of the software project. First system identifies the topics of the uploaded document. Then check System requirements, hardware requirements and software requirements, topics and extract information under those topics. Using that information system generates a text document and a xml document. Structure of the text document should be sentence wise and those sentences are simple present tense, to do this we use NLTK and WordNet. First we check in which tense the verbs in the sentence are in.then convert the verbs which are not in present tense to present tense. This process is done using this function. Sample example is below. verb = 'go' present = present_tense(verrb) print present # prints "going" past = past_tense(verb) print past # prints "went" Using the NodeBox::Liguistics print en.verb.present("gave") >>> give Then SoftPro system should check these requirements in the text document and remove the duplicate requirements this part will handle by the knowledge base system in this project. According to those requirements SoftPro system generates the tasks to achieve above requirements[8]. C. Ontology Ontology describe and represent an area of knowledge. This ontology based on some specific domain.it helps to communicate between human and the application system and provide correct information. Because ontology aims of domain knowledge. According to this research we developed an ontology to identify all of the unique unambiguous user requirements and build up and finalize the user requirements. Ontology is supporting for avoiding duplicated user requirements for build up our final product. We use Protégé editor as our ontology creation tool. This protégé use OWL ontology language.it is a language which is defining ontology on the web. System grab all the requirements and remove every each useless words which are not in ontology hierarchy. Then system identify the each and every relationship in each requirements and identifying the similar individuals for every each remaining words in each requirements.to identify those similarities OWL ontology suppose to describes a particular domain in terms of classes, properties and individuals and have rich description of the characteristics of that object. Data properties will represent the binary relationship and object properties represent the binary relationship which is link an individual to an individual. System goes through the leaf level and at the root it will identify the each and every similarities. SPARQL helps to access to each and every classes,subclasses and individuals. Finally it helps to finalize the unambiguous user requirements. Following diagram represent how do the each and every classes subclasses and individuals are going to arrange[9].

Figure 3 : Mapped Classes Given a similar sentence pair, parse tree for the 2 sentences are shown below. index. It then computes the term frequency map of the index to find the most frequent words found in the document, takes the top few terms and hits the index with a BooleanQuery to find the most relevant sentences. One strategy used by human summarizers is a strategy called skimming that involves reading the first paragraph fully, and then reading the first few sentences from each of the succeeding paragraphs. Our LuceneSummarizer models this using a linear function that is applied to sentences after the first paragraph. b = 1.0 (f*i) if boost >= b0 b = b0 if boost < b0 where: b = computed boost factor b0 = minimum score after boost f = (de-)boost factor i = position of sentence in paragraph. This results in successive sentences (from the second paragraph onwards) to be treated as less and less important, until it reaches a floor, at which point successive sentences in the paragraph get the same importance. The graph below is the actual boost values from one of my test cases, and should help visualizing the behavior of the above function[2]. Figure 4 : Parse tree for sentence pair Our ontology engine will identify the sentences as shown in the above figure as same kind of sentence.so using that the duplicating requirements would be able to identify[3]. D. Information Analysing and Summarising Summarization involves reading a body of text, and summarizing it in our own words, and if done algorithmically, requires a fair amount of AI code and domain knowledge (about the text being summarized).goal was finding the best few sentences from a text body. We looked at 2 open source summarizer applications namely Classifier4J(C4J) and Open Text Summariser(OTS). Summariser is built, taking ideas from both the applications. For example, OTS uses XML files to specify grammar rules and a dictionary of excluded words, which could be implemented using a Lucene's PorterStemFilter and StopFilter respectively. Classifier4J tokenizes words and uses an in-memory HashMap to store a wordfrequency map, which Lucene provides using its the terms() and docfreq() methods of IndexReader. LuceneSummarizer tokenizes the input into paragraphs, and the paragraphs into sentences, then writes each sentence out to an in-memory Lucene Figure 5: Boost values from test case IV. Conclusion With the development of above software project management supportive tool, a flood of responsibilities of the software project manager is reduced. Developing a web based intelligent supportive tool helps users to handle software projects in a convenient way without help of any software project manager. The reliability and the robustness of this intelligent software project management supportive tool offers lots of advantages to the organization or user who is willing to use this product. This tool has been developed,which highly meets the standard and requirements set by the user. Understanding and analyzing the user needs, finalize the requirements and make predictions are the four main categories which are focused by developing this intelligent supportive tool. Most importantly, the

software project management supportive tool should be useful to a business. It should offer real, tangible benefits, either by increasing efficiency, providing better data or decreasing cost. This intelligent supportive tool can save deployers time, offer better information and provide cost savings. The business validity of this intelligent supportive tool will depict by updated in real time, easy to use, brandable and accessible to different levels of users. REFERENCES [1] R. Dildar, S. Fida, K. Zaman, and T. Nazir, "Limited Use of Project Management Tools and Techniques; Determining and Evaluating the Reasons," pp. 4 5, 2014. [2] V. S.Anantatmula, "Project Manager Leadership Role in Improving Project Performance," Engineering Management Journal, vol. 22, pp. 6 8, Mar. 2010. [3] Raymond, L., & Bergeron, F. (2008). Project management information systems: An empirical study of their impact on project managers and project success. International Journal of Project Management. [4] K. Muszynska, "Communication Management in Project Teams - Practices and Patterns," Management, Knowledge and Learning Joint International Conference, pp. 1359 1365, May 2015. [5] Prasanta Kumar Dey, Benjamin Thomas Clegg, David J. Bennett, "Managing enterprise resource planning projects", Business Process Management Journal, Vol. 16 Iss: 2, pp.282 296. [6] Carl Sant'Anselmo, Robert Sant'Anselmo, David C. Hooper Identification symbol, system and method U.S. Patent 5 612 524, March 18, 1997. [7] Makoto Sato Image retrieval by comparing wavelet encoded database images with input shapes U.S. 6 532 307 B1, March 11, 2003. [8] J. Han,M. Kamber, M. Kaufmann, Data Mining: Concepts and Techniques, 2000. [9] Lucene Summariser,[Online] Available: http://sujitpal.blogspot.com/2009/02/summarizationwith-lucene.html. [10] Similar Sentence,[Online] Available: http://sujitpal.blogspot.com/search?updatedmin=2016-01-01t00:00:00-08:00&updatedmax=2017-01-01t00:00:00-08:00&max-results=16