M.Phil / MS
Permanent URI for this collectionhttps://repository.cuilahore.edu.pk/handle/123456789/36
This collection archives the complete set of theses produced by students of the COMSATS University Islamabad, Lahore Campus.
Browse
3 results
Search Results
Item Towards Automatically Resolving Biasness and Conflicts in Stakeholders Input for Requirement Prioritization(Library Information Services, COMSATS University Islamabad, Lahore Campus, 2022) Nabiha Yaseen; SP19-RCS-026; Dr. Farooq Ahmad; LHR TP 8043Requirements are needed before developing any project, so these requirements are elicited from the stakeholders. Software Engineers elicit these requirements to meet the demands of the stakeholders. Software engineers find it challenging to satisfy the demands of multi stakeholders if these elicited requirements are vague or misinterpreted. To meet the accuracy, satisfaction, and expectations of multi stakeholders, prioritization of the elicited requirements is needed. Prioritizing the elicited requirements can completely prevent contract breaches or violations like budget overruns, project deadline mismatches, overshooting of delivery dates, and omitting crucial requirements during development. There are various techniques have been introduced in this area, but the problems related to RE are still under research in terms of lack of collaboration among multi stakeholders, Developer’s effort in eliciting conflicted requirements and to make changes after, and resource and time waste. To address these problems, we designed an approach called the Collaborative Requirements Elicitation Tool (CRET), which is intended to facilitate and improve efficient collaboration between multiple users to get the best from requirements elicitation. To enable multiple stakeholders to cooperatively elicit the same goals and requirements toward project that are conflict-free and unbiased, our tool has been designed and developed in a way to support the real-time communication and collaboration among them and to get the requirements on which they are collaboratively satisfied. Our proposed tool was evaluated for its ability to get best accuracy measures to eliciting the requirements in an unbiased, conflict-free, collaborative, timely efficient and lowering the developer’s effort manner. In our proposed tool CRET, requirement elicitation was done collaboratively, by using the Point P rating technique to set the requirement prioritizing values and employed the k-mean clustering algorithm prioritize the elicited requirements. Introduced two new features in this research is the report requirement feature and other is authority approval to remove the conflicts before forwarding the requirements for prioritization. We utilized the PHP LARAVEL framework to develop this web-based tool. With groups 2 of requirement engineers and client stakeholders, we conducted a user study to evaluate the tool, focusing on requirement elicitation and prioritization using CRET. The study's findings indicate that our proposed automated tool support can assist multiple stakeholders in collaborative communicating with other stakeholders more effectively to produce better and improved requirement elicitation, and our tool eliminates conflicts and biases of multiple stakeholders during elicitation through their collaboration. Our tool works in the four operational steps collaboratively RE (requirement elicitation), RRR (Req rating and reviewing), AA (authority approval) and RP (requirement prioritizing). In the RE phase of the software development life cycle; RP is a task that relates to multi phase decision making. It is mostly used for software release planning and influences the creation of the best software product by eliciting stakeholders' preferred needs.Item An Improved Technique for Software Requirement Prioritization using Functional Requirements(Library Information Services, COMSATS University Islamabad, Lahore Campus, 2022) Zunaira Jamil; FA19-RCS-016; Dr. Farooq Ahmad; LHR TP 8341Earlier recognition, categorization, and prioritization of elicited requirements in the software development is essential for the project's success because it allows problems to be identified and classified in early stages. The most critical and difficult stage of the Software Development Life Cycle is gathering requirements Following this stage, the requirement priority should be handled and saved for upcoming projects. Using machine learning classification approaches software requirement prioritization can be predicted during the requirement gathering stage. To predict the priority of functional requirements for developing new software, a dataset having the attributes of software requirements is required. In this research, a dataset named software requirement prioritization(SRP) is presented that includes requirements from Software Requirement Specification (SRS) of several open-source projects' and ranking value of different factors that help in priority prediction. Ranking value is obtained from the IT experts through survey on rating scale of 1 to 5 where 1 ranks lowest and 5 ranks highest. Further for our proposed SRP system, content-based n-gram approach is considered at word and character level. After that combine multi-label classifier i.e. One Vs Rest, Label Powerset, with six classical machine learning classifiers i.e. Linear SVC, Logistic Regression etc. Micro F1 score, Accuracy score, and Hamming loss are used for evaluation. However, when compared to the other combination of OVR and Label power set with Gradient Boost Classifier, Random Forest, Nave Baise, linear SVC, Bagging, and Adaboost, Label Powerset with Linear SVC performed well.Item Petri Net Based Formal Semantic Extraction from Code(Library Information Services, COMSATS University Islamabad, Lahore Campus, 2021) Shafaq Naz; SP19-RCS-017; LHR TP 7293; Dr. Farooq AhmadDue to the rise of reverse engineering practices from the last two decades, worth of design engineers become highlighted. Therefore, the point of concern is the verifiability of the reverse engineered architecture, because these practices are more likely to use in safety critical systems. Hence, a prototype is needed to verify or to validate the reverse engineered design or module of the legacy system to use in further applications to evade future loss. Therefore, dynamic analysis of the system is main concern which is not possible through direct reversing from the source code. It may include multiple execution trace analysis of the system. Generating a diagram, representing the design of the application, from the code helps to study the runtime behavior of the application. However, diagrams are an informal representation of the behavior which do not support verification and validation of the application. Therefore, there is a need to generate the formal representation of the application. This research focus on the automatic generation of Petri net models from code which describe the behavior of the application as well as its verification. Moreover, generating Petri net formal model from code is a challenging task which is the focus of this research. Firstly, a systematic literature review and comparison of different reverse engineering tools will be performed to critically find out the research gap. Further, this research will proceed to provide a framework to reverse engineer the formal representation of code to understand the behavior the system