Ask Hashimi He has The Answer, but not giving to People.
answer tum do hum kahe de........
Software development life cycle models show the ways to navigate through the complex process of software building. A project's quality, timeframes, budget, and ability to meet the stakeholders' expectations largely depend on the chosen model.
Software systems are now omnipresent. Software is used to help run manufacturing industry, schools, universities, health care, finance and government. The computational power and sophistication of computers have increased ever since, while their costs have been reduced dramatically. The specification, development, management and evolution of these software systems make up the discipline of software engineering. The more powerful a computer is the more sophisticated programs it can run. Even simple software systems have a high inherent complexity so that engineering principles have to be used in their development. The discipline of software engineering discusses systematic and cost-effective software development approaches, which have come out from past innovations and lessons learnt from mistakes. Software Engineering principles have evolved over the past fifty years of contributions from numerous researches and software professionals. To solve actual problems in an industry setting, a software engineer or a team of engineers must incorporate a development strategy that encompasses the process, methods, and tools layers and the generic phases. This strategy is often referred to as a process model or a software engineering paradigm. A process model for software engineering is chosen based on the nature of the project and application, the methods and tools to be used, and the controls and deliverables that are required. In the software development process the focus is on the activities directly related to production of the software, for example, design coding, and testing. A development process model specifies some activities that, according to the model, should be performed, and the order in which they should be performed. As the development process specifies the major development and quality assurance activities that need to be performed in the project, the development process really forms the core of the software process. The management process is decided based on the development process. Due to the importance of development process, various models have been proposed.
One can learn software engineering in college under the course, "Computer Science". One can also learn software engineering by watching tutorials online, or reading books that teach software engineering.
General Software Process Models are 1. Waterfall model: Separate and distinct phases of specification and development. 2. Prototype model. 3. Rapid application development model (RAD). 4. Evolutionary development: Specification, development and validation are interleaved. 5. Incremental model. 6. Iterative model. 7. Spiral model. 8. Component-based software engineering
Verification is done in software engineering in the testing phase. Verification in software engineering mean to check if we are building the system right. It is very important to verify the software before delivering it to the customer.
The Empirical Software Engineering working group empowers software development teams to make sound data-driven decisions by deploying novel analytic tools and methods based on ESE's empirical research on products, process, people, and customers.
The evolutionary software process model involves working with the customers. It starts by specifying clear requirements of the software and features suggested by the customer are added later during development.
There four p's in software engineering. The four p's are people , product, process, project.
Object Oriented Software Engineering (OOSE) is generally speaking a subset of Software Engineering (SE). OOSE includes all the SE Principles and it just specifies a focus on 'Object Oriented' architecture. It also implies the use of a programming language that supports object orientation (such as C++, Java, etc).
Process metrics are used to make strategic decisions about how to complete the common process framework activities. Project metrics are used to monitor progress during software development and to control product quality.
Important components of Software Engineering are: 1. Software Development Life Cycle(SDLC) 2. Software Quality Assurance 3. Software project Management 4. Software Management 5. Computer Aided Software Engineering (CASE)