<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Qaiser Abbas</title>
    <description>The latest articles on DEV Community by Qaiser Abbas (@qaiserabbas).</description>
    <link>https://dev.to/qaiserabbas</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F530616%2Fb164f628-be4f-409f-b08f-d26bd0708924.jpeg</url>
      <title>DEV Community: Qaiser Abbas</title>
      <link>https://dev.to/qaiserabbas</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/qaiserabbas"/>
    <language>en</language>
    <item>
      <title>Smart Contract Wallets: A Beginner’s Guide</title>
      <dc:creator>Qaiser Abbas</dc:creator>
      <pubDate>Sat, 14 Sep 2024 19:27:42 +0000</pubDate>
      <link>https://dev.to/qaiserabbas/smart-contract-wallets-a-beginners-guide-3kmp</link>
      <guid>https://dev.to/qaiserabbas/smart-contract-wallets-a-beginners-guide-3kmp</guid>
      <description>&lt;p&gt;In the world of blockchain and cryptocurrencies, the concept of wallets might sound simple at first. Most people think of wallets as a place to store their money or crypto. However, with the rise of blockchain technology, there's something more advanced called smart contract wallets. These wallets offer extra features that traditional wallets can’t provide.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is a Smart Contract Wallet?
&lt;/h2&gt;

&lt;p&gt;A smart contract wallet is a type of crypto wallet that uses smart contracts—self-executing pieces of code that automatically perform certain actions when predefined conditions are met. Unlike traditional or custodial wallets, which only store and transfer tokens, smart contract wallets bring automation and advanced security features into the mix.&lt;/p&gt;

&lt;p&gt;Smart contracts can also allow you to do things like schedule transactions, and manage your funds more intelligently, giving you control over when and how your assets are used.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Features of Smart Contract Wallets
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Paying Gas Fees in Other Tokens
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Smart contract wallets allow users to pay gas fees using tokens other than the native token of the blockchain.&lt;/li&gt;
&lt;li&gt;Typically, blockchains require fees to be paid in their native token (e.g., Ethereum requires ETH for gas fees).&lt;/li&gt;
&lt;li&gt;Smart contract wallets offer flexibility by letting you use any token in your wallet to cover gas fees.&lt;/li&gt;
&lt;li&gt;The wallet automatically converts the chosen token into the required gas fee using smart contract logic.&lt;/li&gt;
&lt;li&gt;This feature simplifies transactions by eliminating the need to hold native tokens solely for paying fees.&lt;/li&gt;
&lt;li&gt;It is convenient for users holding multiple tokens, as they don't have to manually swap tokens to pay for gas fees.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Multisignature (Multisig) Security:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Requires multiple signatures to approve a transaction.&lt;/li&gt;
&lt;li&gt;It's like having multiple keys to unlock a vault, making it much harder for hackers to gain access. This extra layer of protection ensures that no single point of failure can compromise your funds.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Recovery Options:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Many smart contract wallets offer social recovery features.&lt;/li&gt;
&lt;li&gt;You can assign trusted contacts to help you regain access to your wallet if you lose your private key.&lt;/li&gt;
&lt;li&gt;Think of it like Apple ID or Google Drive backups, where you have additional ways to recover your data in case of a mishap.&lt;/li&gt;
&lt;li&gt;This added recovery layer means you don’t have to worry about permanently losing access to your funds if something goes wrong.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What Happens to Your Funds After You No Longer Exist?
&lt;/h2&gt;

&lt;p&gt;With a simple wallet, there’s no built-in way to specify what happens to your funds after you’re gone. You are the sole custodian of your private keys, and if those keys are lost or forgotten, so are the assets.&lt;/p&gt;

&lt;p&gt;However, with a smart contract wallet, you can write rules specifying what happens to your funds in case of emergency or after your passing. For example, you could set up a feature where after a certain period of inactivity, your funds are automatically transferred to a trusted contact or beneficiary. This is one major advantage that smart contract wallets have over simple wallets.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Switch to a Smart Contract Wallet?
&lt;/h2&gt;

&lt;p&gt;Upgrading from a simple wallet to a smart contract wallet offers many advantages, especially if you're looking for more flexibility, security, and control over your crypto assets. Features like automated transactions, multi-signature security, gas fee flexibility, and easy integration with dApps make smart contract wallets a powerful tool for managing your digital assets more effectively.&lt;/p&gt;

&lt;p&gt;If you’re considering making the switch, here are some popular smart contract wallets you can explore:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Trust Wallet&lt;/strong&gt;: Known for its ease of use and broad support for dApps and token swaps.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Argent&lt;/strong&gt;: A wallet with strong social recovery features and gasless transactions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Gnosis Safe&lt;/strong&gt;: Popular for its multi-signature functionality, offering a higher level of security.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Coinbase Wallet&lt;/strong&gt;: A widely-used wallet with dApp support and staking features.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ZenGo&lt;/strong&gt;: Features keyless security and multi-factor authentication.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Each of these wallets has its own unique strengths, so you can choose the one that fits your specific needs. Whether you’re focused on security, ease of use, or advanced features like dApp integration, switching to a smart contract wallet can enhance how you manage your crypto assets.&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>web3</category>
      <category>smartcontractwallet</category>
      <category>cryptowallet</category>
    </item>
    <item>
      <title>Exploratory Testing: Benefits, Challenges, and Best Practices for Software Testing and QA</title>
      <dc:creator>Qaiser Abbas</dc:creator>
      <pubDate>Mon, 13 Mar 2023 16:20:18 +0000</pubDate>
      <link>https://dev.to/qaiserabbas/exploratory-testing-benefits-challenges-and-best-practices-for-software-testing-and-qa-3p3k</link>
      <guid>https://dev.to/qaiserabbas/exploratory-testing-benefits-challenges-and-best-practices-for-software-testing-and-qa-3p3k</guid>
      <description>&lt;p&gt;Exploratory testing is a type of testing that involves simultaneous learning, test design, and test execution. It is a hands-on approach that allows testers to explore the software, identify potential issues, and provide feedback to the development team. In this article, we will discuss the benefits of exploratory testing, its challenges, and best practices for its implementation in software development.&lt;/p&gt;

&lt;h3&gt;
  
  
  Benefits of Exploratory Testing
&lt;/h3&gt;

&lt;p&gt;Exploratory testing offers several benefits to software development teams, including:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Improved Test Coverage:&lt;/strong&gt; Exploratory testing allows testers to cover more areas of the software than traditional scripted testing. Testers can follow their intuition and explore different parts of the software that may not have been considered in a scripted test plan.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Faster Feedback:&lt;/strong&gt; Exploratory testing can provide faster feedback to developers. Testers can identify issues quickly and provide feedback to developers in real-time, allowing for faster resolution of issues.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Increased Creativity:&lt;/strong&gt; Exploratory testing encourages creativity and innovation in the testing process. Testers can use their creativity and experience to identify potential issues and test scenarios that may not have been considered in a scripted test plan.&lt;/p&gt;

&lt;h3&gt;
  
  
  Challenges of Exploratory Testing
&lt;/h3&gt;

&lt;p&gt;While exploratory testing has many benefits, it also presents several challenges, including:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lack of Structure:&lt;/strong&gt; Exploratory testing can lack structure, which can make it difficult to track progress and measure coverage.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Difficulty in Reproducing Issues&lt;/strong&gt;: Because exploratory testing is often done without a pre-defined test plan, it can be difficult to reproduce issues that were found during testing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Limited Documentation:&lt;/strong&gt; Exploratory testing often relies on the experience and intuition of the tester, which can make it difficult to document the testing process and results.&lt;/p&gt;

&lt;h3&gt;
  
  
  Best Practices for Exploratory Testing
&lt;/h3&gt;

&lt;p&gt;To overcome the challenges of exploratory testing, software development teams can follow these best practices:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Define Goals and Objectives:&lt;/strong&gt; Before beginning exploratory testing, define the goals and objectives of the testing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Record and Document:&lt;/strong&gt; Record and document the testing process and results, including any issues found, to ensure that the testing is repeatable and trackable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pair Testing:&lt;/strong&gt; Pair testing is the practice of having two testers work together during exploratory testing. This can help overcome the lack of structure and increase the creativity of the testing process.&lt;/p&gt;

&lt;p&gt;In conclusion, exploratory testing is a valuable approach to software testing that can provide many benefits to software development teams. By following best practices and overcoming its challenges, exploratory testing can help teams to identify issues early, provide faster feedback, and increase test coverage.&lt;/p&gt;

</description>
      <category>exploratorytesting</category>
      <category>sqa</category>
      <category>bestapproaches</category>
      <category>softwaretesting</category>
    </item>
    <item>
      <title>When to Automate User Stories?</title>
      <dc:creator>Qaiser Abbas</dc:creator>
      <pubDate>Thu, 08 Dec 2022 07:37:09 +0000</pubDate>
      <link>https://dev.to/qaiserabbas/when-to-automate-user-stories-35mm</link>
      <guid>https://dev.to/qaiserabbas/when-to-automate-user-stories-35mm</guid>
      <description>&lt;p&gt;If you have worked in an agile environment as a QA, most probably you would have come across some sort of test automation. I don’t mean unit test automation which is typically a developer centric activity, but functional acceptance test automation which is normally done by QA or the new fancy role of Software Developer in Test.&lt;/p&gt;

&lt;p&gt;First, lets take a look at some criteria and reasons for having test automation which should answer the question of “Why Tests Should/Should Not be Automated”&lt;/p&gt;

&lt;h3&gt;
  
  
  Repeatability
&lt;/h3&gt;

&lt;p&gt;The automated tests should be repeatable and the output should be consistent in each run so that developers can rely on the outcome of the tests. This also means that we would not normally automate a test if it’s going to be run only once; the only exception to this is if you are running a test against a very large number of data, such as checking a link redirection script with many links.&lt;/p&gt;

&lt;h3&gt;
  
  
  Reliability
&lt;/h3&gt;

&lt;p&gt;The automated tests should really be checking verifications correctly and be able to determine actual results against valid expected results. This also means that if the results cannot be determined easily or automated tests are subject to environment issues which can cause false positives in the test results, then the tests cannot be reliable.&lt;/p&gt;

&lt;h3&gt;
  
  
  Time
&lt;/h3&gt;

&lt;p&gt;The automated tests should also save us time. If a simple test takes 10 minutes to complete but the same result can be determined in 1 minute manually, then it is best to not automate such tests.&lt;/p&gt;

&lt;h3&gt;
  
  
  Safety net
&lt;/h3&gt;

&lt;p&gt;The automated tests should provide a safety net for developers so that any deviation from a good working code, as a result of changes to the code base, is quickly highlighted and reported to the developers.&lt;/p&gt;

&lt;h3&gt;
  
  
  When Should Stories be Automated?
&lt;/h3&gt;

&lt;p&gt;In a typical sprint, say there are 7 stories that are committed to a sprint out of which 5 are good candidates to be automated based on the above criteria. But when is the best time to automate these stories? Should we write the automated tests as the features are being developed? Should we wait till a feature is developed and then write the automated tests? Shall we wait till the end of the sprint and then automate the stories?&lt;/p&gt;

&lt;p&gt;In some cases when stories are bug fixes or slight modification or enhancement to an existing feature, then it makes all the sense to write the automated tests as the feature is being modified by developers. There may even be an existing automated test for the feature being modified in which you just need to tweak the script to accommodate the new changes.&lt;/p&gt;

&lt;p&gt;In other cases, when the story is about implementing a new feature to the application, how do we know what the end product will look like to be able to write tests in advance? Here, I’m not talking about feature files which describe the acceptance tests in advance, but the actual fixtures or selenium tests (the implementation of tests) that run against the delivered code.&lt;/p&gt;

&lt;p&gt;The bottom line is - any test which is going to be done more than once should be automated. And which tests are we going to execute more than once? Regression Tests. And what are regression tests? Tests that determine whether the application has regressed in functionality as a result of the new modifications and features.&lt;/p&gt;

&lt;p&gt;But, you can only write good automated regression tests against a system which is stable, well understood and deterministic in terms of behaviour with known inputs and outputs.&lt;/p&gt;

&lt;p&gt;The problem with trying to write automated tests against a feature as it is being developed is you could potentially spend a long time and a lot of effort writing automated scripts against something which is volatile and subject to constant change during the sprint. Moreover, how many times have we seen a story being committed to a sprint and then later being pulled out of sprint? Then we have wasted time scripting something which didn’t make it into the system.&lt;/p&gt;

&lt;p&gt;Some organizations even impose a strict rule that a story is not “done” until it is fully automated! Are we going to stop an important feature to be released because the QA didn’t or couldn’t provide automation in time due to various reasons? Or a story is not “done” because we don’t have an automated script to check the existence of a button on a page. Seriously?&lt;/p&gt;

&lt;p&gt;The best purpose of automation testing is regression testing and regression tests are always run against a known state and deterministic system to be able to detect changes in the baseline, and to get a meaningful result from an automated test, is only when the test has run and passed manually at least once, so you can compare the results of the automated run against the manual execution.&lt;/p&gt;

&lt;p&gt;By this definition, the stories should be automated (the implementation) within sprint and only when the feature is fully verified manually. Once the story is complete and it is verified manually first, then it is a reliable feature and a stable system which you can then design and write automate tests against. Once the automated test is implemented, it is then added to the regression test suite to monitor and detect regression defects as next features are being developed.&lt;/p&gt;

</description>
      <category>watercooler</category>
    </item>
    <item>
      <title>What happens when our computers get smarter than we are?</title>
      <dc:creator>Qaiser Abbas</dc:creator>
      <pubDate>Mon, 18 Jul 2022 16:13:47 +0000</pubDate>
      <link>https://dev.to/qaiserabbas/what-happens-when-our-computers-get-smarter-than-we-are-2409</link>
      <guid>https://dev.to/qaiserabbas/what-happens-when-our-computers-get-smarter-than-we-are-2409</guid>
      <description>&lt;p&gt;Technology has accumulated through human history, and right now, technology advances extremely rapidly that is the proximate cause, that's why we are currently so very productive.&lt;/p&gt;

&lt;p&gt;What we do know is that the ultimate limit to information processing in a machine substrate lies far outside the limits in biological tissue. This comes down to physics. A biological neuron fires, maybe, at 200 hertz, 200 times a second. But even a present-day transistor operates at the Gigahertz. &lt;/p&gt;

&lt;p&gt;Neurons propagate slowly in axons, 100 meters per second, tops. But in computers, signals can travel at the speed of light. There are also size limitations, like a human brain has to fit inside a cranium, but a computer can be the size of a warehouse or larger. So the potential for superintelligence lies dormant in matter, much like the power of the atom lay dormant throughout human history, patiently waiting there until 1945. In this century, scientists may learn to awaken the power of artificial intelligence. And I think we might then see an intelligence explosion. We need to think of intelligence as an optimization process, a process that steers the future into a particular set of configurations. A superintelligence is a really strong optimization process.&lt;/p&gt;

</description>
      <category>superintelligence</category>
      <category>technolog</category>
      <category>information</category>
      <category>todayilearned</category>
    </item>
    <item>
      <title>Build strong foundation to API Testing in 5 mins</title>
      <dc:creator>Qaiser Abbas</dc:creator>
      <pubDate>Wed, 18 May 2022 12:02:49 +0000</pubDate>
      <link>https://dev.to/qaiserabbas/build-strong-foundation-to-api-testing-in-5-mins-p1o</link>
      <guid>https://dev.to/qaiserabbas/build-strong-foundation-to-api-testing-in-5-mins-p1o</guid>
      <description>&lt;h3&gt;
  
  
  Brief Introduction
&lt;/h3&gt;

&lt;p&gt;Generally we conduct software testing to find bugs in an application, to offer an error free product to our clients. The performance of API is also important considering that it is responsible for processing user requests. An important dimension to API testing is security as well. If an API is vulnerable to security threats, the product as a whole may suffer and as a result we may lose out on our client base. If API fails to offer an edge, then irrespective of how easily an application is available, it won't gain acceptance among people.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;API Testing Benefits&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Coverage and Speed of Testing: It could take up to 30 hours to run over 300 UI tests, while 300 API tests can be run in under 3 minutes. Users will be able to find more bugs in a shorter amount of time, so that they can be fixed immediately.&lt;/li&gt;
&lt;li&gt;Faster Resolution Time: Whenever an API test fails, users usually know where the issue is in the system. This reduces time triaging bugs between different team members, integrations, and builds. &lt;/li&gt;
&lt;li&gt;Efficient Test Maintenance: UIs are always moving and changing, based on their accessibility through browsers, screen orientation, or devices, which creates a scenario where tests must be rewritten in order to keep up with the code that’s currently in production. API changes are more infrequent and controlled. &lt;/li&gt;
&lt;li&gt;Early Testing: Tests can be performed to validate accuracy in data and responses with API testing. Users no longer have to wait for their teams to complete their work or for entire applications to be created, as test cases are isolated and can be built right away.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;How is testing the API different from GUI testing? &lt;br&gt;
1) It requires knowledge of inner workings. &lt;br&gt;
2) Access to source code - The availability of the source code would help tester to understand and analyze the implementation mechanism used&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Types of Bugs API Testing Can Detect&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Incorrectly structured response data (XML or JSON)&lt;/li&gt;
&lt;li&gt;Improper management of valid argument values&lt;/li&gt;
&lt;li&gt;High API response times and performance issues&lt;/li&gt;
&lt;li&gt;Multi-threading issues&lt;/li&gt;
&lt;li&gt;Security issues&lt;/li&gt;
&lt;li&gt;Difficulty with getting responses from API or connecting to API (reliability issues)&lt;/li&gt;
&lt;li&gt;Duplicate or missing functionality&lt;/li&gt;
&lt;li&gt;Unused flags&lt;/li&gt;
&lt;li&gt;Doesn’t handle error conditions properly&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Test scenarios for Api Testing:&lt;/strong&gt;&lt;br&gt;
Normally test cases fall into the following general test scenarios:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Basic positive tests (happy paths)&lt;/li&gt;
&lt;li&gt;Extended positive testing with optional parameters&lt;/li&gt;
&lt;li&gt;Negative testing with valid input&lt;/li&gt;
&lt;li&gt;Negative testing with invalid input&lt;/li&gt;
&lt;li&gt;Destructive testing is a deeper form of negative testing where we intentionally attempt to break the API to check its robustness (for example, sending a huge payload body in an attempt to overflow the system).
&lt;/li&gt;
&lt;li&gt;Security, authorization, and permission tests &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Follow me : &lt;a href="https://www.linkedin.com/in/iqaiserabbas/"&gt;Qaiser Abbas&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;References:&lt;br&gt;
&lt;a href="https://www.softwaretestinghelp.com/api-testing-tutorial/"&gt;https://www.softwaretestinghelp.com/api-testing-tutorial/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://rapidapi.com/blog/api-testing"&gt;https://rapidapi.com/blog/api-testing&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.smashingmagazine.com/2020/09/automate-api-testing-postman/"&gt;https://www.smashingmagazine.com/2020/09/automate-api-testing-postman/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.clariontech.com/blog/why-api-testing-is-required"&gt;https://www.clariontech.com/blog/why-api-testing-is-required&lt;/a&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>tutorial</category>
      <category>api</category>
      <category>sqa</category>
    </item>
    <item>
      <title>The growing role of QAOps and Why it matters?</title>
      <dc:creator>Qaiser Abbas</dc:creator>
      <pubDate>Sat, 07 May 2022 10:25:29 +0000</pubDate>
      <link>https://dev.to/qaiserabbas/the-growing-role-of-qaops-and-why-it-matters-1od5</link>
      <guid>https://dev.to/qaiserabbas/the-growing-role-of-qaops-and-why-it-matters-1od5</guid>
      <description>&lt;p&gt;The main idea of introducing the QAOps framework is to integrate the continuous testing in DevOps with the Continuous Integration (CI)/Continuous Deployment(CD) pipeline rather than performing software testing at indefinite intervals.&lt;br&gt;
QAOps framework increases the collaboration between the QA engineers and developers. Therefore, QA engineers must work closely with software developers, operations personnel and everyone involved in the CI/CD pipeline.&lt;/p&gt;

&lt;h3&gt;
  
  
  Technologies and Tools for QAOps:
&lt;/h3&gt;

&lt;p&gt;Below are the technologies and tools that are used as part of the QAOps process.&lt;/p&gt;

&lt;p&gt;Automation Tools: Selenium (with all programming languages: Java, Python, C# and JavaScript, etc.), Provar, Protractor, WebdriverIO, Katalon Studio, Tricentis Tosca, and others.&lt;br&gt;
Performance Testing Tools: JMeter, BlazeMeter, WebLoad, LoadRunner, Tricentis NeoLoad, etc.&lt;br&gt;
Mobile apps Automation Tools: Appium(with all programming languages: Java, Python)&lt;br&gt;
API Testing &amp;amp; Automation Tools: SoapUI, Postman, Runscope, Rest Assured(Java) and Requests(Python), etc.&lt;br&gt;
CI/CD Tools: Jenkins, CircleCI, AWS CodeBuild, Azure DevOps, Atlassian Bamboo, or Travis CI, etc.&lt;/p&gt;

&lt;h3&gt;
  
  
  Life Cycle of QAOps:
&lt;/h3&gt;

&lt;p&gt;QAOps highly uses the idea of continuous testing, such as CI/CD pipelines, and have the following 3 phases:  &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;&lt;em&gt;Trigger:&lt;/em&gt;&lt;/strong&gt; The trigger phase refers to creating correct test cases which is suitable for testing the technicality of the product without wasting time in building unnecessary test cases. The tests cases are designed in such a way that includes all the aspects of the software testing.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;&lt;strong&gt;Execute:&lt;/strong&gt;&lt;/em&gt;  The parallel tests which are approved in the trigger phase are executed in this phase. It is performed consecutively with the Trigger phase by executing the tests designed in the previous phase to ensure the quality of the product.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;&lt;strong&gt;Report:&lt;/strong&gt;&lt;/em&gt; The report phase is the final phase in the QAOps process which includes reporting the outcomes of the trigger and execute phase. The entire brief of the process is generated with a detailed description as a final report.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Conclusion‍
&lt;/h3&gt;

&lt;p&gt;Executing or implementing QAOps can give your organization an upper hand over your competitors in the software development industry, and QAOps paves the road to faster software delivery when correctly designed and implemented. It gives a better customer experience without any quality compromises.&lt;/p&gt;

&lt;h5&gt;
  
  
  References:
&lt;/h5&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://www.techcrackblog.com/2020/09/what-qaops-means-and-why-it-matters-for.html"&gt;https://www.techcrackblog.com/2020/09/what-qaops-means-and-why-it-matters-for.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.mstsolutions.com/technical/quality-assurance-ops/"&gt;https://www.mstsolutions.com/technical/quality-assurance-ops/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.itmagination.com/qa-ops-quality-assurance-in-the-age-of-agile-methodologies"&gt;https://www.itmagination.com/qa-ops-quality-assurance-in-the-age-of-agile-methodologies&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.knoldus.com/not-heard-about-qaops-yet/"&gt;https://blog.knoldus.com/not-heard-about-qaops-yet/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://saucelabs.com/blog/operationalizing-quality-assurance-operations-qaops"&gt;https://saucelabs.com/blog/operationalizing-quality-assurance-operations-qaops&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>sqa</category>
      <category>qaops</category>
      <category>codequality</category>
      <category>softwareqa</category>
    </item>
    <item>
      <title>Artificial intelligence in QA</title>
      <dc:creator>Qaiser Abbas</dc:creator>
      <pubDate>Wed, 29 Dec 2021 17:34:13 +0000</pubDate>
      <link>https://dev.to/qaiserabbas/artificial-intelligence-in-qa-2ebg</link>
      <guid>https://dev.to/qaiserabbas/artificial-intelligence-in-qa-2ebg</guid>
      <description>&lt;p&gt;Artificial intelligence is increasingly visible in many fields, and so it is in quality assurance. AI is often presented as the perfect solution for every problem, but is that true? I believe everyone has to give credit to the power of AI in image analysis and unit/API/UI test automation. However, it is worth keeping in mind that this field of study is still far from reaching perfection. &lt;/p&gt;

&lt;p&gt;Currently, AI can resolve only specific problems, such as increasing test coverage levels in unit tests. AI testing automation has the potential for some companies to limit unnecessary costs in the supervision of software solutions and products. &lt;/p&gt;

&lt;p&gt;Besides cost reduction, AI in automation testing provides benefits like eliminating lone errors, which are more likely to escape the tester's eye.&lt;/p&gt;

&lt;p&gt;How can you use the potential of AI test automation in 2022? &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Visual testing to check UI design quality.&lt;/li&gt;
&lt;li&gt;Spidering - AI collects the data based on continuous website visits, so it can compare it later on for potential downgrades. It still needs a human touch in the end though.
&lt;/li&gt;
&lt;li&gt;For now, AI cannot provide full test coverage automatically. The current test production process is based on training on a specific dataset, with the test cases being generated later, with checking required by the tester. However, AI systems could take some of the testing load, reducing a lot of the repetitive work.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There are many reasons why this tech is predicted to be worth 310 billion dollars by 2026, and those mentioned above are only a few of them.&lt;/p&gt;

&lt;h1&gt;
  
  
  qualityassurance #ai #automation #testing #artificialintelligence
&lt;/h1&gt;

</description>
      <category>ai</category>
      <category>testing</category>
      <category>sqa</category>
    </item>
    <item>
      <title>Software Testing/ SQA as career</title>
      <dc:creator>Qaiser Abbas</dc:creator>
      <pubDate>Wed, 22 Sep 2021 18:54:45 +0000</pubDate>
      <link>https://dev.to/qaiserabbas/software-testing-sqa-as-career-32am</link>
      <guid>https://dev.to/qaiserabbas/software-testing-sqa-as-career-32am</guid>
      <description>&lt;p&gt;Everyone Can´t Be a Software Tester&lt;br&gt;
Testers are mostly creative people that look at the world from a different perspectives, they get into the user role and create different scenarios.&lt;/p&gt;

&lt;p&gt;People outside the QA department think and even believe that anyone can test software and testing is not a creative job. However, testers know very well that this is a myth. Thinking alternative scenarios, try to crash a software with the intent to explore potential bugs is not possible for the person who developed it.&lt;/p&gt;

&lt;p&gt;The current pandemic changed the world, many people lost their jobs and want to learn a new profession. Some of them decided to get into IT, as it’s one of the most promising industries. The false conviction that it’s easy to become a software tester kinda flouts this profession. All jobs look easy from the outside, but once you get on the train you will see that it’s more than just pressing buttons.&lt;/p&gt;

&lt;p&gt;Testers are among the most creative people in IT, they have a massive influence on the whole development process because they see what others don’t. It’s not so easy to look at one thing from different perspectives, if you get to test an app you can’t follow the “ideal” user journey. They are the ones that create new scenarios, they fully commit to providing the most value for the client, and they are the unsung heroes of every project.&lt;/p&gt;

&lt;p&gt;It is a common perception that testing is just clicking on UI randomly and tracking details in excel or other documents. The reality is that testers perform very well-defined test steps to assure that the UI/APP is working in exceptional cases as well. So, it is the vision that counts.&lt;br&gt;
Since a user does not have boundaries on what they can and cannot do, the same goes for testers. This is why it is important to explore the UI, which might look like lots of random clicks.&lt;/p&gt;

&lt;p&gt;Only we testers know that there is a method to this madness.&lt;/p&gt;

&lt;p&gt;Testing is happiness. Be Proud to be a Tester. Cheers to Testing Community!&lt;/p&gt;

</description>
      <category>softwaretester</category>
      <category>sqa</category>
      <category>career</category>
      <category>testing</category>
    </item>
    <item>
      <title>7 Principles of Software Testing</title>
      <dc:creator>Qaiser Abbas</dc:creator>
      <pubDate>Mon, 20 Sep 2021 08:42:18 +0000</pubDate>
      <link>https://dev.to/qaiserabbas/7-principles-of-software-testing-9kb</link>
      <guid>https://dev.to/qaiserabbas/7-principles-of-software-testing-9kb</guid>
      <description>&lt;p&gt;According to International Software Testing Qualification Board there are seven principles that should be considered when developing the testing strategy for a software product.&lt;/p&gt;

&lt;h3&gt;
  
  
  1) Testing shows presence of defects
&lt;/h3&gt;

&lt;p&gt;By testing you can show presence of defects in a product but you can never prove that the product under test is defect free. &lt;/p&gt;

&lt;h3&gt;
  
  
  2) Exhaustive testing is impossible
&lt;/h3&gt;

&lt;p&gt;Testing all possible scenarios (all combinations of preconditions and inputs) is not feasible. Techniques like risk analysis should be used to prioritize and focus the testing efforts.&lt;/p&gt;

&lt;h3&gt;
  
  
  3) Early testing
&lt;/h3&gt;

&lt;p&gt;The testing activities should be started as early as possible during the software or system development life cycle. The cost to fix a bug increases exponentially if the bug is found in a later phase of the development life cycle.&lt;/p&gt;

&lt;h3&gt;
  
  
  4) Defect clustering
&lt;/h3&gt;

&lt;p&gt;In a project, a small number of the module can contain most of the defects. Pareto Principle to software testing state that 80% of software defect comes from 20% of modules.&lt;/p&gt;

&lt;h3&gt;
  
  
  5) Pesticide paradox
&lt;/h3&gt;

&lt;p&gt;The test cases should be reviewed and updated on regular basis. New tests should be developed to exercise new parts of the software or system. If this is not done and the same tests are repeated again and again eventually no new bugs will be found, but this does not mean that the system is defect free. Testing should focus on continuous improvement during the complete development life cycle.&lt;/p&gt;

&lt;h3&gt;
  
  
  6) Testing is context dependent
&lt;/h3&gt;

&lt;p&gt;The testing approach depends on the context of the software developed. Different types of software need to perform different types of testing. For example, The testing of the e-commerce site is different from the testing of the Android application.&lt;/p&gt;

&lt;h3&gt;
  
  
  7) Absence of errors fallacy
&lt;/h3&gt;

&lt;p&gt;If a systems does not fulfill the user needs and expectations then having a bug free system does not help. Functional testing and a deep understanding of the customer expectations is a must during the development life cycle.&lt;/p&gt;

</description>
      <category>softwaretesting</category>
      <category>sdlc</category>
      <category>sqa</category>
      <category>softwarequality</category>
    </item>
    <item>
      <title>Final Year Project Ideas for Software Engineering</title>
      <dc:creator>Qaiser Abbas</dc:creator>
      <pubDate>Fri, 19 Mar 2021 17:42:47 +0000</pubDate>
      <link>https://dev.to/qaiserabbas/final-year-project-ideas-for-software-engineering-144</link>
      <guid>https://dev.to/qaiserabbas/final-year-project-ideas-for-software-engineering-144</guid>
      <description>&lt;h1&gt;
  
  
  First thing first
&lt;/h1&gt;

&lt;p&gt;When it comes to software development activities, it is necessary for those who wish to become software engineers to work on their projects. Developing real-world projects is the best way to hone your skills and use your theoretical knowledge into practical knowledge.&lt;/p&gt;

&lt;p&gt;You will need to familiarize yourself with new tools and technologies while working on a computer science project. The more you learn about edge development tools, environments, libraries, the more will be your test rating for your projects. The more you experiment with ideas for different computer science projects, the more you will find out.&lt;/p&gt;

&lt;p&gt;The ideas for the Technical Science project include the design and construction of various products and solutions designed for the application. So, if you would like to know about a few ideas for the Computer Science project, this article is what you need!&lt;/p&gt;

&lt;h2&gt;
  
  
  What is the purpose of the final year project?
&lt;/h2&gt;

&lt;p&gt;The final year of engineering consists of two semesters in which students are asked to prepare a module that reflects their learning across all their academics. This year is very important as skills are tested with judges based on performance. Students are starting to apply to various companies this year and it is important that they showcase their talent through the project being implemented. Companies test students based on this project so, in the last year collecting projects becomes an important task.&lt;/p&gt;

&lt;h2&gt;
  
  
  How do I choose a final year project title?
&lt;/h2&gt;

&lt;p&gt;Students are often confused when choosing a final year project, so they may end up choosing the most common or the most boring. Last-year students are encouraged to choose their projects carefully, as this will be reflected in their job search profile. Let's see how students can find ideas in choosing projects.&lt;/p&gt;

&lt;p&gt;Understand which programming language helps you, this will make your project easier.&lt;br&gt;
Look for ideas, something you feel can be easily done using technology.&lt;br&gt;
Focus on the project at hand rather than looking at someone else. At this stage, students are distracted from the ultimate block of their mind, make sure you do your project with full focus.&lt;br&gt;
See the internet for ideas. You can take and work on recent projects, a few of which are listed below.&lt;br&gt;
Write down your ideas, and check out a few. This will help you to understand your ability.&lt;/p&gt;

&lt;p&gt;This list of computer science and software final year project ideas for students and is suitable for beginners, and those just starting out with Python or Data Science in general. These computer science project ideas will do everything you need to be successful in your career as a software engineer.&lt;/p&gt;

&lt;p&gt;so let's start&lt;/p&gt;

&lt;h2&gt;
  
  
  1- Online-Assessment proctoring 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;This project will focus on the need to develop a web based application that can monitor the activities of students during an online assessment. Various modalities of data would be explored to find out the best one that helps to achieve the most accurate results. Video data from webcam as well as the screenshots after a fixed interval of time in milliseconds would be analysed to track the Eye Gaze of the user for an efficient suspicion detection. Also the lips would be monitored for talking detection. The application would keep record of all the suspicious activities during the course of online assessment for each student in a database.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Computer Vision/Video analysis&lt;br&gt;
Skill Required:&lt;br&gt;
Good Programming skills&lt;/p&gt;

&lt;h2&gt;
  
  
  2- Scalable Automated Assessment System for Programming Assignments 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;There is a need for final year students to incorporate cheaper scalable solution that can support the automated assessment of hundreds of students. For this purpose we require smart algorithms and concurrent programming.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Computer Vision/Video analysis&lt;br&gt;
Skill Required:&lt;br&gt;
Good Programming skills&lt;/p&gt;

&lt;h2&gt;
  
  
  3- Game based learning 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;Unified Modelling Language (UML) has become the standard language for the design and analysis of object-oriented software concepts. Number of tools are available that support design with UML, But they only provide the facility to draw UML diagrams and generate code from the UML model. So far no tool provides the environment to learn different concepts of UML. Exploration games are also introduced to guide the software developers to choose the best design for given requirements. But they are not provided the step by step learning of different UML diagrams. The aim of this project is to develop the concepts of UML by providing the learning environment. We are going to develop an educational application called “UML guide for beginners”. The application will make the developer learn the basics and cores of Unified Modelling Language. To maintain the interest of user/developer we will be using gamification approach (use of game elements for educational purpose). This gamified experience will have perpetual impact on the user/developer. In this way we believe that the modelling deficiencies will be raised above and there shall be no need of reworking.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Game Development&lt;br&gt;
Skill Required:&lt;br&gt;
Good Programming skills&lt;/p&gt;

&lt;h2&gt;
  
  
  4- Shopping Site 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;The app could be similar to OLX or Daraz but the extra feature could be video calling. To create a mobile application which will aid in the selling and buying of items online. The main aim of the application is to build is to try and reduce the number of items being returned to help increase business revenue. By integrating videocall into buying and purchasing allows the customer to see the product before coming into physical contact with the product. This will remove any doubt when buying as the customer is 100% sure that the product is what they intend it to be and of satisfactory quality.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Web Development&lt;br&gt;
Skill Required:&lt;br&gt;
Good programming skills and Database&lt;/p&gt;

&lt;h2&gt;
  
  
  5- e-Learning platform 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;In this project, you will build a sharable e-learning platform for online learning. This e-learning platform powered by cloud computing would allow the independent Learning Management Systems (LMS) embedded in various e-Learning standards to share their learning objects, modules, and content. Basically, cloud computing will encourage the sharing of a wide range of learning objects, allowing learners to access them online easily. The project has a three-layer architecture to facilitate sharing learning modules, reusing them, and interoperability among different learning content efficiently. The middle layer of the infrastructure contains an indexing module and a metadata transformation module to encourage the exchange of metadata among acknowledged e-Learning standards.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Web Development&lt;br&gt;
Skill Required:&lt;br&gt;
Good programming skills and Database&lt;/p&gt;

&lt;h2&gt;
  
  
  6- Android task monitoring 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;This project is exclusively designed to simplify the tracking and monitoring of day-to-day activities of the busy modern life. We are so busy in our daily lives right now that it becomes impossible to keep track of our daily events, meetings, and appointments. To address this issue, this project focuses on developing a Weekly Task Alerting System for Android devices that can alert users of the tasks/appointments that are scheduled for each day in a week. The project is primarily a reminder app powered by an AI chatbot that reminds users of all the tasks that are due daily. Users can use this application to set goals and achieve them, thereby increasing productivity and simplifying their lives.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Android Development&lt;br&gt;
Skill Required:&lt;br&gt;
Good programming skills&lt;/p&gt;

&lt;h2&gt;
  
  
  7- A premium quality freelance marketplace
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;A premium quality freelance marketplace made specifically for any country like Pakistani freelancers, that hires only a certain set of experts based on a recruitment process (involves live interview, some assessments, etc). The platform services favours freelancers since they the platform service percentage cut would be anywhere between 5-10% (half of what it is currently), better financial rewards since only a quality set is being recruited. On the other hand, buyers would also benefit since they get the top-notch talent in a marketplace that's not very flooded and saturated like the currently available ones.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Web Development&lt;br&gt;
Skill Required:&lt;br&gt;
Good Programming skills&lt;/p&gt;

&lt;h2&gt;
  
  
  8- Smart health in IOT using BAN 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;the concept of m-health has been the concept of m-health has been introduced which give understanding of matching the m- health and Internet of things with respect to their functionalities in the advance applications of fourth generation. The diabetes is a well- known disease because of its chronic long term effects in both economic and social aspects. In this paper we address the IoT by opto-physiological accessing techniques for measuring the glucose level and discuss the diabetes management. We are aiming towards the connectivity and management of heterogeneous devices from perspective of healthcare in mobile network. This technology makes able the route of communication between diabetic patient and the hospital or clinicia introduced which give understanding of matching the m-health and Internet of things with respect to their functionalities in the advance applications of fourth generation. We are aiming towards the connectivity and management of heterogeneous devices from the perspective of healthcare in mobile network. This technology makes able the route of communication between patient and hospital&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Computer Vision/Video analysis&lt;br&gt;
Skill Required:&lt;br&gt;
SE, networking, wireless network connectivity&lt;/p&gt;

&lt;h2&gt;
  
  
  9- Learn Together 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;This idea focuses on developing an application in which short animated videos will be made for teaching children the basic moral of life. e.g. to start eating with BISMILLAH. There will also be an assessment module.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Android Development, Computer Graphics&lt;br&gt;
Skill Required:&lt;br&gt;
Good Programming Skills, Graphic Design&lt;/p&gt;

&lt;h2&gt;
  
  
  10- Lets Grow Smartly 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;This idea focuses on developing an application in which child specialists and nutritionists are added on a single platform. Parents from all around the world contact them and get guidance from them. Further, there will be a community garage where all parents can share their innovative ideas that they have practiced with their children or can ask general questions. Parents can also share videos of their children doing some innovative work.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Web Development&lt;br&gt;
Skill Required:&lt;br&gt;
Good Programming Skills, Database&lt;/p&gt;

&lt;h2&gt;
  
  
  11- Visual Analysis of Author Impacts and Bibliometric Data 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;This study is about the visual analysis of author impact and other bibliometric data such as an author’s publication history. It utilizes Publish or Perish as a data source, which is a search tool to find this bibliometric data. Bibliometric data is a concept within Bibliometrics with which to find and define notable publications, to draw a number of different conclusions, such as how much impact an author has had in a given field. To do this we use information visualization techniques. Information Visualization is a field of science about increasing insight and understanding of raw data. It does this by researching on details of human cognition and perception and how data itself is modelled, and by categorizing and developing new ways to encode and interact with data visually.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Artificial Intelligence&lt;br&gt;
Skill Required:&lt;br&gt;
Knowledge of Artificial Intelligence, SE &amp;amp; Database&lt;/p&gt;

&lt;h2&gt;
  
  
  12- A Roadmap for Usability and User Experience Measurement During Early Phases of Web Applications Development 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;Web usability and User Experience (UX) play a vital role in the success and failure of web applications. However, the usability and UX measurement during the software development life cycle provide many challenges. The current usability and user experience evaluation and measurement methods and the defined measures as well as their applicability during the software development life cycle.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Web Development&lt;br&gt;
Skill Required:&lt;br&gt;
SE, Project Management&lt;/p&gt;

&lt;h2&gt;
  
  
  13- Gamification for Job training Challenges 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;The recruitment, engagement, and training of the employees are among the core and critical roles for running an organization successfully. Gamification has been proven to be a promising tool that offers many innovative solutions for various domains. The traditional recruitment process includes job advertisement, resume submission, test conduction, and interview conduction. These conventional methods of recruitment have helped to predict job performance to some extent but have proven to be outdated, tedious, and time-consuming. Therefore, A gamified job training or employee engagement application should be developed to help the organizations.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Game Development&lt;br&gt;
Skill Required:&lt;br&gt;
Good Programming skills&lt;/p&gt;

&lt;h2&gt;
  
  
  14- Android Women Safety App 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;Women’s safety is a big concern which has been the most important topic till date. Women safety matters a lot whether at home, outside the home or working place. Although the government is taking necessary measures for their safety, still, there are free safety apps for women that can help them to stay safe. Most of the females these days carry their smartphone with them, so it is necessary to have at least one the personal safety apps installed. Such a security app for ladies will definitely facilitate in a way or the opposite. This is user-friendly application that can be accessed by anyone who has installed it in their smart phones. Our intention is to provide you with fastest and simplest way to contact your nearest help. In this system user needs to feed three contact numbers, in case of emergency on moving the phone up and down thrice, the system sends SMS and calls on one of the numbers feeded into the system with the location. The phone starts vibrating, and siren starts ringing. This features for both everyday safety and real emergencies, making it an ultimate tool for all.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Web/Android Development&lt;br&gt;
Skill Required:&lt;br&gt;
Good programming skills and Database&lt;/p&gt;

&lt;h2&gt;
  
  
  15- Daily Route Planner 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;Many people own small business, where they drive car from one point to many. For drivers of any kind where they are about to deliver any parcels or to use a direction, they can use this daily route planner where they can base their decision on what they should follow. This makes road trip easier and faster. This route optimization application will navigate your entire route in stop by stop sequence, from start to end. With this route optimizer application, travelling time can be saved and many places can be visited on the planned day. This android application can plan route for a road trip including all stops and make the trip easier and smoother. It can help with roundtrips which will last more than a day. Also, it will help any person to analyses in decision making with how many places he/she can visit in total with multiple stops within a time frame.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Web/Android Development&lt;br&gt;
Skill Required:&lt;br&gt;
Good Programming skills&lt;/p&gt;

&lt;h2&gt;
  
  
  16- e-Parking Challan 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;The main idea behind this project is to develop an app that can be used by the traffic police in case of wrong parking. Most of the times the car owners park their cars at wrong places and disappear for quite a long time. Whenever, a car is wrongly parked, the police instead of waiting for the owner, can take an image of the car and its license plate from their mobile phones. They will post the pictures into a central database from where the car owner will be fined and get an auto generated SMS for the details of its fine. This app would also provide to make available the violation history of the violator with one click. The challan can then be paid through e-payment or can be added into the annual tax of the car.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Android Development&lt;br&gt;
Skill Required:&lt;br&gt;
Good programming skills, Database, Computer Graphics&lt;/p&gt;

&lt;h2&gt;
  
  
  17- Celebrity Profiling Corpus and techniques  
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;Celebrities are among the most prolific users of social media, promoting their personas and rallying followers. This activity is closely tied to genuine writing samples, rendering them worthy research subjects in many respects, not least author profiling. The Celebrity Profiling task is to predict different traits of a celebrity from their social media communication. The traits are the degree of fame, occupation, age, and gender. The social media communication is given as the teaser messages from past tweets. The goal is to develop a piece of software which predicts celebrity traits from the twitter profiles. And for this purpose corpus will be generated by collecting tweets from individual profiles.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Web/Android Development&lt;br&gt;
Skill Required:&lt;br&gt;
Natural Language processing, Machine learning, Data science&lt;/p&gt;

&lt;h2&gt;
  
  
  18- Online Election System 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;Online Election System would have Candidate registration, document verification, auto-generated User ID and pass for candidate and Voters. Admin Login which will be handled by Election Commission .Candidate Login which will be handled By Candidate, Voters will get Unique ID and Password, Using which they can vote for a Candidate only once per Election&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Web Development.&lt;br&gt;
Skill Required:&lt;br&gt;
Good Programming skills, Data Base.&lt;/p&gt;

&lt;h2&gt;
  
  
  19- Doctors on Hand 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;Main idea of this project is to make a hand held application through which patient do not further need to go doctor to doctor to find who is expert and can treat your disease. This application will find itself a most suitable/expert and nearest doctor according to your disease.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Web Development.&lt;br&gt;
Skill Required:&lt;br&gt;
Natural Language Processing&lt;/p&gt;

&lt;h2&gt;
  
  
  20- A Liar Robot  
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;Robots always tell us for what they are programmed/ they always tell us the truth. But the idea of this project is to make an intelligent robot which can tells a lie as human do, so mimicking pure human behaviour.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Intelligent Machines and Robotics&lt;br&gt;
Skill Required:&lt;br&gt;
Strong Programming skills with hardware level knowledge/ interested in learning, good in assembly language.&lt;/p&gt;

&lt;h2&gt;
  
  
  21- Batch Advisory 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;This will be an online portal to help batch advisors. With this portal batch advisor will be able to decide if a student is capable of selecting the course he wants to opt for. This portal will minimize the time and workload spent in looking students schedule, class, clashes, prerequisite, ability to pick a course.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Web development.&lt;br&gt;
Skill Required:&lt;br&gt;
Good Programming skills, Database.&lt;/p&gt;

&lt;h2&gt;
  
  
  22- Sentiment Analysis of Facebook Users: A Software System 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;Social media applications extremely reflect upon people sentiments. An understanding of this trend will potentially assist to identify the harmful factors that need to be eliminated as well as suggestion system can be proposed. Our emphasis will be to build an application for fetching data of Facebook by using Graph API, analyse the trend of data, and later offer a complete system that will be built based on the theory of Statistics, AI and Human-Computer Interaction.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Android Application Development&lt;br&gt;
Skill Required:&lt;br&gt;
Skilled in Java/Android and Databases.&lt;br&gt;
Willing to learn new API (e.g. Graph API).&lt;br&gt;
Willing to explore research literature.&lt;br&gt;
Excellent English writing skills.&lt;/p&gt;

&lt;h2&gt;
  
  
  23- Speech Therapy for Speech Challenged Children of Pakistan 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;Children who are born with serious hearing disorders don’t develop speech abilities, even though their speech related physiological aspects are healthy. As a result they face a big challenge in the long run as far as their communication skills are concerned. Many opportunities available for ordinary members of society become out of reach for them. When such children are given hearing aids they face a very interesting problem. Since they had not heard and processed speech so they don’t know how to speak. They need specialized training to learn to speak. It is a very frustrating process; each word has be repeated thousands of time. This training is imparted by trained speech therapists. The job of a speech therapist is very challenging and as such there is a high rate of turnover in this field. Moreover in Pakistan the number of properly trained speech therapists is far less than what is needed. As a result a large number of children are unable to receive the professional training that they need to be able to speak properly. With the decline in cost of computing hardware it is now possible for the less fortunate ones to afford basic hardware, the problem is software. Almost all of speech therapy related software is proprietary and quite expensive, especially for those living in underdeveloped countries. Moreover language is also a problem. Majority of the proprietary speech therapy software is meant to teach English, which is not our mother tongue. This project is intended to fill this gap.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Software Engineering&lt;br&gt;
Skill Required:&lt;br&gt;
Good Programming skills&lt;/p&gt;

&lt;h2&gt;
  
  
  24- Detection of Malicious Applications on OSN 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;Online social networks (OSN) have grown a largest platform for interaction and entertainment such as games. A lot of applications are developed for the OSN; however, the real intentions of the application may vary from developer to developer. Some application may have malicious intentions for which user may not be aware. Machine learning can algorithms can be used to detect malicious applications offered to OSN users.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Artificial Intelligence, Machine Learning&lt;br&gt;
Skill Required:&lt;br&gt;
Strong programming concepts&lt;br&gt;
Excellent command of Java / Python&lt;br&gt;
Good concepts of statistics and linear algebra (Optional)&lt;br&gt;
Eager to learn new material by self-study&lt;/p&gt;

&lt;h2&gt;
  
  
  25- Facts finding and monitoring of persons on social networks 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;Social networks on net are very useful and becoming more &amp;amp; more popular among young generation. However these are now the main cause of Cibber crimes. We are going to develop an application which can guess actual info. of newly added unknown person based on keywords used during messaging. All conversation will silently transfer to guardian through email and will immediate alert in case of any threat.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Web Development&lt;br&gt;
Skill Required:&lt;br&gt;
Good Programming skills&lt;/p&gt;

&lt;h2&gt;
  
  
  26- Software Quality Assurance 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;This final year project explores the dimensions of software testing, and the development of such automated tool. The students will be dealing with the generation and execution of test data to evaluate the correctness of a program. There are some quite famous techniques present in the literature and the students will be developing some of them. Mainly the project explores black box and white box testing and highlights the errors that can go unnoticed by the programmers. Some common errors/warnings include: “memory leaks”, “dangling references”, “infinite loops”, “fall through cases in switches”, “out of bound”, “unreachable code”, “ignored return values”, and “unused variables and functions”.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Software Engineering&lt;br&gt;
Skill Required:&lt;br&gt;
software engineering, algorithms, good programming and analytical skills&lt;/p&gt;

&lt;h2&gt;
  
  
  27- Virtual Class Room 
&lt;/h2&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;p&gt;Virtual reality is and will be at its boom in coming years. The proposal is to build a proof of concept that could virtualize a class room environment. Utilizing capabilities of Kinect and HTC VIVE or any other VR platform. Student from any location could connect to the class and feel like in a class room environment and view teacher delivering a lecture in front of them.&lt;/p&gt;

&lt;p&gt;Application Area:&lt;br&gt;
Web / Mobile Application&lt;br&gt;
Skill Required:&lt;br&gt;
Good Programming skills&lt;/p&gt;

&lt;h1&gt;
  
  
  Conclusion:
&lt;/h1&gt;

&lt;p&gt;We hope that these software development project ideas inspired you to start working on software projects to hone your skills! And also now you have sound knowledge about FYP ideas to be implemented. So if you like these findings please don't forget to comment on your favourite project and also share it with your friends. This article is from &lt;a href="https://www.codeindark.com/final-year-project-ideas-for-software-engineering/"&gt;Codeindark&lt;/a&gt;&lt;/p&gt;

</description>
      <category>finalyearproject</category>
      <category>softwareengineering</category>
      <category>codeindark</category>
    </item>
  </channel>
</rss>
