Application development Assignment, Study Guides, Projects, Research of Web Application Development

Application development involves the process of designing, creating, and implementing software applications for specific platforms or devices, addressing user needs and solving problems. It includes activities such as coding, testing, and deployment, with the aim of delivering functional and user-friendly applications.

Typology: Study Guides, Projects, Research

2020/2021

Uploaded on 05/26/2023

abc-def-91
abc-def-91 🇳🇵

2 documents

1 / 163

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Application Development
2021
Kriti Khoteja (HND / Fourth Semester)
Contents
Part 1 ................................................................................................................................................. i
Abstract ............................................................................................................................................. i
Content ............................................................................................................................................. 1
Introduction ...................................................................................................................................... 1
Why programming language needed .............................................................................................. 1
Software Development Lifecycle (SDLC)...................................................................................... 2
Predictive software development models ................................................................................... 2
Sequential models ..................................................................................................................... 2
User requirement ......................................................................................................................... 14
System Requirement .................................................................................................................... 15
Software requirements ................................................................................................................. 16
Hardware requirements ................................................................................................................ 16
Client requirements ..................................................................................................................... 16
Risks of project completion ......................................................................................................... 16
Estimation and scheduling ....................................................................................................... 16
Growth in requirements: .......................................................................................................... 17
Technical risks ........................................................................................................................ 17
Compromising on design ............................................................................................................. 17
Unclear specifications ............................................................................................................. 17
SQL injection .......................................................................................................................... 18
Sensitive data exposure ........................................................................................................... 19
Cross site scripting .................................................................................................................. 20
Broken access control .............................................................................................................. 20
Coding Standards ........................................................................................................................ 21
Indentation .................................................................................................................................. 22
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Partial preview of the text

Download Application development Assignment and more Study Guides, Projects, Research Web Application Development in PDF only on Docsity!

Contents

Part 1 ................................................................................................................................................. i

WalMart Inventory

APRIL 4, 2021

Kriti Khoteja (HND / Fourth Semester) i Part 1 Abstract Here is the report which includes business document, project documentation and so on. This part covers the business-related documentation which includes the well-defined problem definition statement, a set of user requirements and system requirements etc. Also, this part covers, the assessment of the risks which might occurs while doing the project and the detailed purposed solution of it.

Introduction “A programming language is a set of commands, instructions, and other syntax use to create a software program. Languages that programmers use to write code are called “high-level languages.” This code can be complied into a “low-level language,” which is recognized directly by the computer hardware” (computer hope, 2021). Each programming language is handy with its own translator, i.e., an interpreter or compiler, as the case may be. Programming languages are a human- computer interface, which helps us to interact with machines and do great things. It is also a method for problem solving. It speeds up the cycles of input and output within a computer. Programming is important for precisely automating, gathering, handling, measuring, analyzing data processing and information. It is a vocabulary and a collection of rules that command a computer, devices, application to work according to the written code. Programming languages are important because it makes our life easier by developing many programs which does our work with ease. It will sure enhance and increase the power of the computer, mobiles and the internet. Programming language will be more powerful when the right programmer uses it with the rights language and right feature to solve the problem. Why programming language needed? There are many programming languages which are in use. Different languages are used in different platform. Among them Java is the one. Java works cross platform which makes this unique and amazing feature heavy programming language different from other languages, this is why it is in high demand (importance of programming language, 2021). It is one of the most desired language for programming as it is object oriented. Java programmers are highly paid as top employers such as eBay, Amazon and IBM always look for them. It is widely adopted programming language, as it is used to develop all android apps on tablets and mobile phones. Currently almost 9 million developers are using Java and it is running nearly on 7 billion devices all over the world. This makes Java the most relevant and as well as futuristic programming language. One thing you need to remember about Java is that it is high level programming language, that is why it is not as easy as python. But, nevertheless, Java is still a beginner friendly language. While learning Java and implying the code of this language, it may take a bit long for you to finish your first project, but once you master it, you will be able to complete coming up projects in very less

time. Software Development Lifecycle (SDLC) Developing a software requires different stages where a successful application is made with different approach and can be made as per the requirements of the client. There are various software development life cycle models which is designed for developing an application (SDLC, 2019). A better application requires a better software engineering weather the application is small or big, developing it with SDLC Model ensure success of the application. There are many software development lifecycle models. Each model follows a series of unique steps which ensure success in the development process. There are two types of lifecycle model where many sub models are defined. They are predictive lifecycle and sequential lifecycle models which is explained below: Predictive software development models Predictive model is a linear, specific development plan structured around producing a predetermined end result within a specific timeframe. In all the projects, there must be some activities related with the initiation of the project, planning of the project, analysis, project design, implementation and deployment. Each of these activities is known as a phase. These models are also known as sequential models where first phase should be completed to move on next phase and if some errors occur in development phase, we can’t go back in previous phase to fix it. Sequential models Sequential models rely on intensive periods of collecting and refining requirements for a product before design and development activity can take place. Products developed using these models are intended to be complete when released to customers. Examples of Sequential models are: Waterfall model, V model etc.

Verification phase: There are four steps of the verification phases. They are described below: ➢ Requirement analysis: This is the first step of the verification phase in which the required materials are gathered for the development if the software. This step includes the communication with customers to gather the proper information and create the things as per their expectation. This step is also simply known as requirement gathering. ➢ System design: This is the second step of the verification phase which are done after required materials are gathered. This includes the system design and detailing the hardware and communication setup for the product required for the development. ➢ Architectural design: This is the third step of the verification phase. This step is also known as high level design. Various important technical approach is proposed and the required budget is determined in this step. The system design is broken down further into modules taking up different functionality. The data transfers in between the internal module and external is clear and defined in this step. ➢ Module design: This is the final step of the verification phase. In this step, the internal designs are done in a detailed way. The designs created in this step must be compatible with other designs created in the third phase. This step is also said as low level design. ➢ Coding phase: This is the second phase of v model. In this phase, the required coding for the development is done as per the designs created in the previous phase. The programming languages are decided on the basis of the system and architectural requirement (V-model, 2016). Various coding is done based on the coding guidelines and standards. ➢ Validation phase: This is the final phase of V model. There are different validation phases which are described below: ➢ Unit testing: This phase is linked with the module design of the verification. This phase is executed on the code done in module design. This is the basic testing of the code which helps to

remove the bugs from the early stage of the development though it cannot remove all the bugs. ➢ Integration testing: This phase is linked with the architectural design phase of the verification phase. integration testing is done to test the coexistence and communication of the internal modules within the system. ➢ System testing: This is another phase of the validation which is directly linked with the system design phase of the verification. This phase checks all the functions and links between internal and external system. Most of the software and hardware compatibility issues can be uncovered during this system test execution. ➢ Acceptance testing: This is the final phase of the validation which completely deals with the requirement analysis phase of verification in which products are tested. This phase helps in the detection of the requirements collected. It discovers the non-functional issues such as load and performance defects in the actual user environment. Advantages and disadvantages of V model: There are various advantages and disadvantages of V model. Some of the advantages are listed below:  This is highly disciplined model and the phases are completed only one at one time.  This model is simple to understand and easy to use.  This is very applicable for the small development. There are few disadvantages which are listed below:  This method has high risk and uncertainty.  This is not very good model for large development project.  There is no working software is produced until late during the life cycle.

iii. Implementation: The third phase of waterfall model is implementation. In this phase, from the help of the system design created in second phase are programmed which are literally called as unit which are integrated in the next phase. The unit is developed and tested for the proper test of its functionality which is said as unit testing. iv. Integration and testing: The fourth phase of waterfall model is integration and testing. In this phase, all the units developed in implementation phase is integrated into a system and the proper testing of software is done for any faults and failure and to reduce the bugs from the software. v. Development of system: After all the testing are done and most of the bugs are removed, the software is fully developed and the development phase is the fifth phase of waterfall model. In this phase software is ready to use and start using from this phase. vi. Maintenance : After the development of system and use of it may bring some issues which are need to be fixed and are fixed in this phases and necessary changes in the development are done in this phase. Advantages and disadvantages of waterfall model: There are various advantages and also disadvantages too. Some of the advantages are described below: a. This model is very easy to understand as well as easy to use. b. Through the help of this, it is easy to arrange tasks. c. Only one stages or phases are completed at one time. d. Every step is documented clearly. There are few disadvantages of waterfall model. They are: a. This project is not suitable for the complex and object-oriented projects. b. It is difficult to measure progress within stages. c. This model has high risks and uncertainty. d. It will be difficult to handle the project or development if the scope of the development is

changed in the middle of the development. Iterative model Iterative model is defined as a particular implementation of SDLC that simply focuses on initial and not more focused in a step of development like sequential model. It does not depend upon the steps and can bring the changes as per the need and necessity (Priya pedamkar, 2019). Basically, development begins by specifying and implementing just few parts of the software which is reviewed for gathering information for further development. This development done the partial collection of the requirements rather than full collection of the information. This process is repeated to gain the better version of software in each cycle of the model. Fig: Iteration Model. Steps of iteration model: This model does not have more steps like waterfall model or other sequential model. But it has few steps which are repeated over and over after initial phase after completion of each cycle for incremental improvement and iteration of the software. The steps of iteration model are described below: ❖ Planning and requirements: