Currently, most job seekers and companies heavily depend on online job portals to meet their recruitment drives. The advent of internet has provided avenue especially for job applicants to process their Curriculum Vitae (CV) and forward the same to potential employers in anticipation to secure employment. Thus, job portals lack responsive programs to facilitate online processing and generation of CV. Our idea is to come up with a prototype that processes curriculum vitae online. This report provides a systematic overview of related software engineering tools applied on the development of the said program for online CV processing, focusing on engineering dissertation help. The report also discusses software quality assurance theories and practices in relation to the said program development. In conjunction with the quality assurance theories, quality assurance tools and techniques is also provided, prior to providing the gap for future study and conclusion that provides a generalized overview of the whole report.
As we move forth with technology in the domain of internet, many people are harnessing the internet for different communication purposes. Amongst such needs is job-seeking that require applicants to produce a curriculum vitae and send it electronically to potential employers. Many job seekers are utilising the internet to seek job opportunities in different work stations. Thus, as the number of job seekers increase, the need for online application platforms increase whereby job seekers get to fill their CV online in a structured way. This report intends to review how a responsive database design that captures the sort of information the organization would like in the job seeker’s resumes ought to be developed based on MYSQL. The aim is to come up with a prototype application to test the design and ascertain the documentations are up to date. Thus, the report is an investigation and evaluation of relevant engineering tools that helps in the development of a prototype that would enable job-seekers enter and edits their resumes online. Additionally, the report integrates various software engineering tools applied in development such as IDE, frameworks and software assurance tools. The report also encompasses relevant software quality assurance theories and practices related to project development.
Majority of job seekers in contemporary job market have fundamental knowledge of computers and their operations. An average job seeker has potentials in checking email, creating word processing document, typing and sending files online through email. Alongside the spinning wheel of technological revolution, quality improvement in systems development remains at the peak of information systems engineers in contemporary days (Cohn, 2017). In addition, information system technologists are under pressure to conceive applications that are responsive to users; needs in a timely and cost-efficient way. In different organizations, systems development is a construct of repetitive challenges such as low quality systems, long development lead time, high developmental costs and consumer dissatisfaction. Such challenges arouse need for new systems (Reifer, 2017). Moreover, the quest to elevate the quality of current systems is motivated by the introduction of new services and products into the market; and therefore the need to integrate such values and products into systems.
Furthermore, the recent years have lack of enough awareness about companies and poor knowledge of application processes have contributed to difficulties in finding jobs in the market. Besides, the complexity of language used in many existing online job application tools is a common problem in many countries. International students after completing studies find difficulties in arranging for a job for lack of in-depth knowledge about the job market in various countries (Huo et al., 2014). The difficulties the international students encounter also ascend from language barrier since many employers give preference to students that are endowed with national language efficacy.
The internet becomes a crucial tool to search through which job applications can be made irrespective of the applicant’s nationality and local consciousness (Brohi, Butt and Zhang, 2019). This is based on the claim that online job search websites do not have actual filtering methods; thus the job seeker is unable to look for the actual type of job desired. For many job seekers, finding the job online and making attempts to secure the vacancy may be hampered by inability to process and generate appealing curriculum vitae, cover letter and the entire application process. These situations turn out to affect the overall economic wellbeing of a country. As a result, the conception of an up to date and customer oriented curriculum vitae portal is a welcomed pursuit which will not only have positive economic implications but also responsive to numerous contemporary demands of the many people.
Practitioners and researchers have contended Total Quality Management (TQM) provides an excellent pathway to quality management in the area of systems development. Current systematic reviews have demonstrated the entrenchment of Total Quality Management practices in many contemporary organizations in the realm of systems development; and such organizations have thrived well in the competitive market environment (Brohi, Butt and Zhang, 2019). Different TQM techniques such as quality function deployment and statistical quality control have been initiated and applied in software quality assurance. Whereas such techniques have been found instrumental in tracking and managing quality prospects, their influence upon system quality relies on linking individual product and process metrics to intended quality objectives.
Amidst growing number of online job applicants, the provision of an application that would enable applicants fill their CV online in a structured manner becomes a norm in modern technological world. The application ought to be constructed on the threshold of high quality standards, meeting the users' demands.
Acquiring software-dependent systems from an external resource may be not only costly but also time-consuming and unreliable. On the eve of independent technical evaluation and customer engagements, the Software Engineering Institute realized most contractors do not harness mature and readily provided software development materials and tools during the creation of code for spearheading software programs (Naik, and Tripathy, 2011). Such tools encompasses test automation, static analysis, and peer review technique. Moreover, such tools are instrumental in providing insights and courage to customers who are the consumers of software products.
Integrating the aforementioned tools to the development of a prototype based on using MYSQL database to help in the processing of CV, will help in the minimization of risks based on the premise that programs will deliver more predictably. Besides, the tools will inspire customer satisfaction since the product will experience fewer field defects. Lastly, the tools will induce lower costs in overall program development since the program will experience lower life-cycle maintenance costs when deployed operationally.
Software tools constitutes automated program applied in the managing, designing, coding, maintaining and inspecting other programs (Brohi, Butt and Zhang, 2019). The available engineering tools for commercial purposes range in complexity and size; from complex tools supporting numerous software projects simultaneously to simple aids for individual programmers.
The following are some of the tools used in the development of software for online CV processing prototype. The first one is the preprocessor, which performs preliminary work on a draft computer program prior to conclusive testing on the computer. Preprocessors may be of different typologies such as code auditors (filters) that allow the management to establish whether the programmers are confining within the demands of required standards and specifications. Another type of preprocessor is the shorthand preprocessor which permits engineers and software consumers (Job applicants in this context) to write the programs in abbreviated form which is later on extrapolated by the preprocessor before being tested in the computer gadget. Thus, shorthand preprocessor reduces proofreading effort, writing and punching (Pohl, 2016).
One of the core Software Quality Analysis tools employed is the McCabe Industrial Quality software package which is harnessed for effective exploration of different case studies and projects in software quality assurance domain (Koelsch, 2016). This tool assisted us to examine the McCabe’s structured testing methodology which is instrumental in code analysis and test-coverage estimations. Focusing on this this tool, we became conversant with how to apply graphical theories for the complexity in code analysis and developed test strategies and predicted possible errors.
Software techniques denote to procedures and methodologies applied in designing, developing, documenting and maintaining programs (Mosharraf, Haque, and Schneider, n.d). This particular project employed three main techniques. First, is the concurrent documentation whereby documentation development happened concurrently with program development for the purpose of offering better program control and increase completeness in documentation while saving money. The second technique used is top down development whereby the designation, coding and testing of systems beginning from general levels and proceeding down detailed and more specialized level.
Another common software tool is the test data generators; which are tools that analyze a program and yield data files required in testing the program logic. Further, program analyzers as software tools are tools applied on modifying or monitoring the function of an application program to enable the extraction of useful information about its functionality. The extracted information is then used in modifying the program to lower the running costs and ensure the proper functioning of the program. In addition, user support libraries (programmer) as software tools are automated filing systems supporting the system engineers on installations. The support library holds files containing draft programs, documents and data and may be used to offer management with progress reports (Reifer, 2017).
The aspects of software quality in software development were better understood from four main dimensions or views namely; the user view which conceived quality as fitness for purpose, product view which perceived quality as inherent characteristics of the software product thus internal qualities which ultimately determine the external qualities, manufacturing view which viewed quality as conformance to the specification and lastly value-based view which views quality based on users willingness to pay for it; or embrace its application (Boehm and Turner, 2003). These views necessitated the need to create an online CV application prototype with behavioral characteristics with qualities including reusability, maintainability, correctness, testability and efficiency.
Different software quality models were put into consideration during the development; which therefore boosted quality and its related quality. The most remarkable models were the ISO 9126 and CMM. A close examination into literature to understand the originality of the ISO 9126 found that the model was conceived by an expert group under the umbrella of the International Organization of Standardization (ISO). ISO 9126 proposes six wide, independent categories of quality traits including reliability, functionality, usability, maintainability, efficiency and portability. On the other hand, CMM was conceived by the Software Engineering Institute (SEI) (Gillies, 2011). Based on the premises of this model, our program development was process was evaluated on a scale of 1 to 5 (level 1 through level 5). For instance, level 1 was denoted as the initial level while level 5 as the highest threshold of maturity.
In the domain of software testing, we employed different software-quality models in our program to optimize on its quality outcomes. Two of the most significant software testing models are Test Process Improvement and Test Maturity Model. The two models enabled us to assess existing state of software testing practices and also establish the next logical domain for necessary improvement and consequently propose an action plan for the entire test process improvement.
It is within our understanding that testing constituted a significant role in attaining and evaluating software quality. Besides, the quality of our development improved as we repeated a test-find-defects-fix cycle during development. While we assessing how good our system was, we optimized the potentials of the software being accepted by the consumers. As a matter of fact, the prospects of quality valuation rested on two broader categories namely; static and dynamic analysis. Static analysis was based on looking at software models, requirements, and source code. In other words, static analysis focused on code review, proof of software correctness and inspection. On the other hand, dynamic analysis focused on the actual program execution to bring into the surface potential failures. The performance and behavioral properties of the program were put into the spotlight, and careful selection of finite test set was vital in reaching a reliable conclusion.
The waterfall model is one of the most influential process models applied in program development. Proposed by Royce, this model integrates sequential or linear execution of phases such that the former stages give useful insights and feedback to the subsequent stage (Riabov, 2011). According to Budgen (2003), the waterfall model is not easily adaptable to change, and is subject to overconsumption of financial resources. Besides, the model is characterized by poor communication which may induce forth disasters. In addition, the deployment of this model will require that no working will be available until all phases are accomplished.
As a result of the aforementioned limitations, an iterative framework of software development was proposed. According to iterative model, various requirements are gathered and the program is initiated and delivered to the users based on iterations. Each of the submitted iteration to the user is an addition to the already submitted iteration. A spiral model is a perfect example of iterative model, whereby prototyping and design elements are combined in a stage. The four major phases are engaged in this framework; including, objective, risk, development and validation and planning.
Another typical SDLC known as V-model was conceived in 1980s (Alwan, 2015). This model increased focus on testing program developments to ascertain n software quality is optimized at every phase of its development. These models are characterized by strong document-oriented methodologies and thus are highly rigid. As a result, the conception of more flexible lightweight approaches was (agile) conceived. For instance, Extreme Programming is one of the common agile methodologies which were developed to eradicate the challenges experienced in lengthy program development cycles characterizing traditional development frameworks. Extreme Programming model is characterized by short developmental cycles and constant feedback.
This project embraced the SDLC and Agile approach to design our system. The major process from SDLC was adhered to including; planning, analysis, implantation, and design (Alwan, 2015). On planning, we planned before getting started. Planning is vital since it helps to establish how the program will be conceived step-wise. In analysis, we conducted requirement analysis. This is where we also investigated the existing system, market assessment concerning the proposed system and developed a high level design. On implantation, we develop various kinds of Unified Modeling Language (UML) and mockup to test before developing a prototype (Galin, 2004).
Other models including Rapid Application Development, Dynamic system development, agile manifesto and prince 2 project management model are also relevant to the development of online CV application platform but were not considered in this particular project report.
The view that the development of all software systems ought to comply with high quality standards spearheaded our operations. Consequently, few errors and defects were recorded, and were eliminated in time before the implementation of the software application. Our main objective was to create a user-friendly interface to help job seekers process and send CV online to potential employers. The aim was to make this application effective, functional with computer programs and compatible with other devices without adjustment. Based on such demands, the infusion of Software Quality Assurance (SQA) was deemed necessary in the entire Software Development Life Cycle (SDLC) (Alwan, 2015).
Software Quality Assurance (SQA) constituted two main parameters namely process and testing. Process provided the basis under which all the functional processes of Software Development Life Cycle depend. According to Beck (2000), process is the entity dictating when to do what, who should do what and how should it be done. Despite the view that process ought to be informal, it should be acutely mapped prior to the execution of SDLC. The existence of software development procedural tools ensures there is effective implementation. However, Alwan (2015) noted software development procedural tools cannot in isolation create functionality of the program. Instead, live and real people can tackle this, and only people can create a strategy and therefore the need to put in place process in the first place.
Software Quality Assurance integrates more complex tools that contribute to the enhancement of software testing potentials. As a result, Software Quality Assurance testers have gained momentum in finding and reporting issues and defects faster while ensuring the conducted tests are relevant to meeting consumers’ needs and specifications. Akbar et al., (2017) noted software testing tools are rampantly used in many corporate organizations. The only challenge occurs when organizations hurry in implementing an SQA tool without establishing a relevant and responsive Quality Assurance process.
This study largely focused on the aspects of software engineering tools applicable in the development of program that would enable job applicants process CV online prior to sending them same to potential employer for recruitment considerations. Whereas different theories, quality assurance tools and techniques are given prominence, the study acknowledges a gap requiring systematic review to establish the impacts that various software development methodologies have on software development methodologies in statistical form.
Software development methodology is a crucial element in ensuring software engineers develops specific programs within stipulated budget and time. A close review of literature establishes that it is important to bring to the table gaps and limitations between different software developments methodologies. To fill the space and eradicate the imitations of methodology; the introduction of the AZ-model which is divided into three phases (customer involvement, development and releasing phases) becomes vital. Based on this model, program users are centrally positioned in the development process, to ensure the program is responsive to the needs of its users. As discussed above, the area of software testing is also important since it ensures the program is working well on the part of users and is compatible with other infrastructures.
Akbar, M.A., Sang, J., Khan, A.A., Shafiq, M., Hussain, S., Hu, H., Elahi, M. and Xiang, H., 2017. Improving the quality of software development process by introducing a new methodology–AZ-model. IEEE Access, 6, pp.4811-4823.
Alwan, M., 2015. What is System Development Life Cycle. Airbrake. Viitattu, 9, p.2015.
Beck, K., 2000. Extreme programming explained: embrace change. addison-wesley professional.
Budgen, D., 2003. Software design. Pearson Education.
Boehm, B. and Turner, R., 2003. Using risk to balance agile and plan-driven methods. Computer, 36(6), pp.57-66.
Brohi, A.B., Butt, P.K. and Zhang, S., 2019, July. Software Quality Assurance: Tools and Techniques. In International Conference on Security, Privacy and Anonymity in Computation, Communication and Storage (pp. 283-291). Springer, Cham.
Cohn, M., 2017. User Stories and User Story Examples by Mike Cohn. Mountain Goat Software.
Endres, A. and Rombach, H.D., 2003. A handbook of software and systems engineering: Empirical observations, laws, and theories. Pearson Education.
Galin, D., 2004. Software quality assurance: from theory to implementation. Pearson Education b3India.
Gillies, A., 2011. Software quality: theory and management. Lulu. com.
Looking for further insights on Prototype Development of Online Curriculum Vitae Generation? Click here.
Huo, M., Verner, J., Zhu, L. and Babar, M.A., 2014, September. Software quality and agile methods. In Proceedings of the 28th Annual International Computer Software and Applications Conference, 2004. COMPSAC 2004. (pp. 520-525). IEEE.
Koelsch, G., 2016. What Makes a Good Requirement?. In Requirements Writing for System Engineering (pp. 31-74). Apress, Berkeley, CA.
Mosharraf, K., Haque, A.B. and Schneider, S., A Prototype of Recruitment Portal.
Naik, K. and Tripathy, P., 2011. Software testing and quality assurance: theory and practice. John Wiley & Sons.
Pohl, K., 2016. Requirements engineering fundamentals: a study guide for the certified professional for requirements engineering exam-foundation level-IREB compliant. Rocky Nook, Inc..
Riabov, V.V., 2011. Methodologies and tools for the software quality assurance course. Journal of Computing Sciences in Colleges, 26(6), pp.86-92.
Reifer, D.J., 2017. Software Quality Assurance Tools and Techniques. Software Quality Management, New York: Petrocelli Books, Inc.
Academic services materialise with the utmost challenges when it comes to solving the writing. As it comprises invaluable time with significant searches, this is the main reason why individuals look for the Assignment Help team to get done with their tasks easily. This platform works as a lifesaver for those who lack knowledge in evaluating the research study, infusing with our Dissertation Help writers outlooks the need to frame the writing with adequate sources easily and fluently. Be the augment is standardised for any by emphasising the study based on relative approaches with the Thesis Help, the group navigates the process smoothly. Hence, the writers of the Essay Help team offer significant guidance on formatting the research questions with relevant argumentation that eases the research quickly and efficiently.
DISCLAIMER : The assignment help samples available on website are for review and are representative of the exceptional work provided by our assignment writers. These samples are intended to highlight and demonstrate the high level of proficiency and expertise exhibited by our assignment writers in crafting quality assignments. Feel free to use our assignment samples as a guiding resource to enhance your learning.