Muhammad Fahad Khan

Work place: Department of Software Engineering, University of Engineering & Technology, Taxila, Pakistan



Research Interests: Software Construction, Software Design, Computer systems and computational processes, Computer Vision, Algorithm Design


Engr. Muhammad Fahad Khan did his Bachelors in Software Engineering and MS in Computer Engineering from University of Engineering and Technology Taxila, Pakistan in 2007 and 2010 respectively.
Currently he is enrolled in PhD and also serving as an Assistant Professor in the Software Engineering department of University Of Engineering and Technology Taxila, Pakistan. His areas of interest are Internet Application development, Object Oriented Programming, Software Design and Architecture, Discrete Structures, Computer Communication and Networks.

Author Articles
Assimilation of Usability Engineering and User-Centered Design using Agile Software Development Approach

By Hina Iqbal Muhammad Fahad Khan

DOI:, Pub. Date: 8 Oct. 2014

Various agile software development methodologies, since their commencement, encouraged the development of high quality software product. Quality of a product is the compelling trait that plays a vital role in any product’s success. Usability engineering and User centered design are user-centered approaches, covering the customer’s concerns. The way these approaches are understood and carried out with agile practices is not properly understood and adopted till now. For software applications to be usable and valuable it is necessary to understand the correct user requirements in order to develop the interface that is usable and valuable to the customer. In this research work, we are discussing the scrum approach of agile development and integrate this with the usability engineering and user centered design approaches which helps the agile development team to understand usability demand of users and develop a product according to their expectations.

[...] Read more.
Defect Management in Agile Software Development

By Rida Noor Muhammad Fahad Khan

DOI:, Pub. Date: 8 Mar. 2014

Agile development reduces the risk of developing low quality software in the first place by minimizing defects. In agile software development formal defect management processes help to build quality software. The core purpose of defect management is to make the software more effective and efficient in order to increase its quality. There are several methods for handling defects like defect prevention, defect discovery and resolution which are used by software developers and testers. Refactoring keeps the system clean by identifying and removing quality defects. To gain the full confidence of the customer defect management should be involved at every stage of development. Agile methodologies focus on delivering the software in form of short iterations. Thus each iteration helps to overcome defects and leads better development and end user satisfaction. This study paints the picture of handling the software defects using agile based Software Development Process.

[...] Read more.
Suitability and Contribution of Agile Methods in Mobile Software Development

By Asra Khalid Sobia Zahra Muhammad Fahad Khan

DOI:, Pub. Date: 8 Feb. 2014

Boom of mobile app market is phenomenal and so are the challenges for developing these mobile applications. With changing mobile market technology and trends, various technical constraints for building these mobile apps also cropped up with time. Tradition development approaches are unable to tackle these challenges and technical limitations of mobile market. Analyzing this situation researchers have proposed numerous agile practices to develop people oriented mobile app which embrace their changing needs. This paper provides a brief overview of some effective and commonly used agile approaches that adds value to mobile software business. Suitability of these approaches to fit mobile needs is also discussed in this paper. It is suggested that agile innovations offer a solution for mobile applications and examine developer who are in quest of building high quality products.

[...] Read more.
Cloud Computing ensembles Agile Development Methodologies for Successful Project Development

By Ambreen Nazir Ayesha Raana Muhammad Fahad Khan

DOI:, Pub. Date: 8 Nov. 2013

In today's IT world combination of AD (Agile Development) and CC (Cloud Computing) is a good recipe for the user needs fulfillment in efficient manners. This combination brings superiority for both worlds, Agile and Cloud. CC opportunities are optimized by AD processes for iterative software releases and getting more frequent user feedback while reducing cost. This paper analyzes the AM (Agile Methodology) processes and its benefits, issues with CC. ACD (Agile Cloud Development) approach helps a lot in overwhelming the challenges of both practices, encourages higher degree of innovation, and allows finding discovery and validation in requirements.

[...] Read more.
Improvement in Quality of Software Architecture via Enhanced-Pattern Driven Architecture (EPDA)

By Muhammad Fahad Khan Kanwal Yousaf Anam Mustaqeem Muazaam Maqsood

DOI:, Pub. Date: 8 Nov. 2012

No doubt software plays an important role in improvement of our lives. Great demand of software makes software architecture more complex. Flaws in any software have direct impact on diverse fields of life (such as business, science, engineering etc). The main reason of any software failure is due to poor software architecture or quality attributes. This paper focuses on factors that affect the quality of software architectures and highlighted the major reason of the defects through questionnaire and survey. In the light of this survey a technique is proposed to improve the quality of any software architecture. The proposed architecture is Enhanced-Pattern driven architecture (EPDA). This architecture focuses on the improvement of design phase in any architecture. This will also help in resolving lots of problems which arise due to usage of different traditional architectural styles.

[...] Read more.
An Approach Towards Customized MultiTenancy

By Muhammad Fahad Khan Mirza Ahsan Ullah Aziz-ur-Rehman

DOI:, Pub. Date: 8 Sep. 2012

Multi-tenant applications are usually cloud based software services which can serve different users at the same time. This is done using single instance of applications by sharing hardware, infrastructure, data storage and virtualization. To achieve multi tenancy different approaches are there at every layer (Application, Data, hardware).Multi tenancy helps to minimize the effort needed for deployment and maintenance with an adequate level of security and privacy. Now a day the work is going on custom multi tenancy by sharing everything at each layer. This paper will describe the techniques of multi tenancy and how security, flexibility and scalability relate to each other when it comes to multi tenancy for customization.

[...] Read more.
Other Articles