What Is Software?: Applications Are of Two Types
What Is Software?: Applications Are of Two Types
What Is Software?: Applications Are of Two Types
◦ Software application is a set of programs designed to perform a specific task for the user
What is Testing?
◦ Testing is a process of checking whether the given software or application is behaving as expected
◦ There is different type of testing with different purpose like white box, black box etc.
◦ Testing is a group of techniques to determine the correctness of the application under the predefined
script but, testing cannot find all the defect of application. The main intent of testing is to detect failures
of the application so that failures can be discovered and corrected. It does not demonstrate that a
product functions properly under all conditions but only that it is not working in some specific
conditions.
◦ Project- Any application which is developed a single customer based on his/her specific needs,
for example bank portal
◦ Critical project – Where there is financial transactions are there like banking
applications.
◦ Normal project
•It provides high level idea , how he/she want the application
Customer
Business
• BA discuss with the Customer and gather the information
Analyst
What is SDLC?
◦ SDLC means software development life cycle
◦ It is a process which includes various phases that are followed to develop the software application
◦ SDLC is having different stages/phases and each phase has its various activities
◦ Different approach/methodology like agile, waterfall will be used but everyone has these stages
IV. Snapshots
BRS SRS
• It represents relationship between the tasks and it gives proper sequence of task
• Flow diagram is commonly used by the product manager, designer, or people who need to talk about
how the business works
Assignment – Write down the functional requirement for the rest of the fields
Use Case
• It represents list of different roles/actors
• It represents list of actions/task a specific user/actor can perform
• It is nothing but the description of the ways in which user interacts with a system
• Below is the example of Facebook where we have two actor and different action each actor can perform
• It will give the idea to the developer that how system supposed to look like
• Below is the snapshot of the Facebook home page with sign up page
Design
• It is the most crucial phase in the development of a system.
• The logical design produced during the analysis is turned into a physical design - a detailed description
of what is needed to solve original problem.
• In this phase, the requirement gathered in the SRS document is used as an input
• In the stage, the programming language and the hardware and software platform in which the new
system will run are also decided.
• High Level - It is the overall system design - covering the system architecture and database
design.
• Low Level design- It is based on high level design. It is more detail design which include sub-
module
• There are two types of developer – Front end developer and Backend Developer
• Front end developer will focus on programming the front end of website or app that a user will interact
with (the client side). Back-end developer focuses on the side of a website users can’t see (the server
side)
Testing
• Testing is the process of checking completeness/correctness of the software
• Developer will test every line of the code of the program. The developers perform the White
box testing and then send the application or the software to the testing team,
◦ Technical support is called KPO (Knowledge process outsourcing), it generally involve accounting, market
and legal research etc.
◦ Non-Technical support in call BPO (Business process outsourcing), it is generally call center for customer
assistance
SDLC Model
◦ There are various software development life cycle models defined and designed which are followed
during the software development process. These models are also referred as Software Development
Process Models
◦ Waterfall model
◦ Iterative model
◦ V-model
◦ Agile
Waterfall Model
• Winston Royce introduced the Waterfall Model in 1970
• Developer must complete every phase before the next phase begins
• No ambiguous requirements
◦ Management simplicity thanks to its rigidity: every phase has a defined result
◦ Perfect for the small or mid-sized projects where requirements are clear
Disadvantages
◦ Once the application is in testing stage, it is difficult to go back and change what is uncertainty
◦ Not suitable for the projects where requirement is at a moderate to high risk of changing