A software engineer is a person who create computer apps using rules of computer science.
5 P’s:
Product:
Final outcome of any project is a product
Process:
The method used to develop the product. Process ensures quality. Your process of developing a software should be quality oriented.
Price:
The cost+profit
Place
The location
Promotion
Marketing And Ads
Process Models In Software Engineering:
Agile Development:
Now a days software is used in every sector. We need close relationship with customer or client. We want to talk to customer and other stakeholders frequently to get new requirements. This is called agile development. We use a method called Scrum to talk to customer and update customer on almost per day basis.
What is a Scrum?
A scrum is talking to customer and other stakeholders in one month (2-4 weeks) called Sprint. There is Product Owner And Scrum Master and other developers to talk to customer, take changes and implement in 1 month.
If we have 6 months project, we will have 6 sprints. Every sprint is a workable and useable product. Customer can use it and tell what should we do next.
In modern software engineering, Agile is the main methodology to communicate with customer.
Software Engineering And Project:
In software engineering, there are following stages:
Concept and Initial Communication is part of Planning. -> Planning
Analysis and design is part of architectural design model -> Modeling
We put the code in components for easy management in future. Component Design is part of System model -> Modeling
Code and test is part of Integration -> Integration
Deploy and feedback, communication, documentation, lessons learned are part of Deployment -> Deployment
What is Quality Of A Software?
You should take consideration of all stakeholders in terms of quality. The major stakeholders are
We use V-Model to ensure quality at every stage of software development.
There are following testing methods to ensure quality of software:
When we do Planning, we use -> Acceptance Testing
When we do Analysis And Design [Modeling], we use -> System Testing
When we do component design [Modeling], we use -> Integration Testing
When we do Code and Test [Integration], we use -> Unit Testing
At every stage we use testing to ensure quality because quality product means more profit and happy customer, the goal of a company.