2
2 Goals of software development Aspects of software quality Development life cycle models Basic concepts of algorithm analysis Notation of the Unified Modeling Language (UML) Some issues related to error handling

3
3 Software engineering Software Engineering is the study of the techniques and theory that support the development of high- quality software Solve the right problem Deliver a solution on time and under budget Deliver a high-quality solution Avoid two basic risks: Solve the wrong problem Solve the problem wrong

5
5 Development Models A development life cycle defines a process to be followed during product development problem analysis design implementation evaluation, testing and debugging maintenance

6
6 Problem Analysis I Analysis : understanding the problem Questions to be answered: What are the objectives of the software system What are the objects to be manipulated, how are they described, how are they related Are there available operations to achieve the desired results

7
7 Problem Analysis II Various techniques: discussions and negotiations with the client modeling the problem structure and data flow observation of client activities analysis of existing solutions and systems

10
10 Implementation Turn the design into functional software – actual coding Too many people consider this the primary act of software development May involve the reuse of existing software components

11
11 Evaluation, Testing, Debugging Does the system solve the problem? Is the solution efficient? It is possible to build a system that has no bugs and yet is completely wrong Testing and debugging: Design test cases Test to see if requirements are met Fix errors

12
12 Operation and maintenance After a system is initially developed, it must be maintained This includes: fixing errors making enhancements to meet the changing needs of users The better the development effort, the easier the maintenance tasks will be

15
15 The Waterfall Model II Each stage flows into the next Driven by documentation Advantages: Lays out clear milestones and deliverables Has high visibility – managers and clients can see the status Disadvantages: late evaluation not realistic in many situations

17
17 The Spiral Model Developed by Barry Boehm in the mid '80s Embraces an iterative process, where activities are performed over and over again for different aspects of the system Designed to reduce the risks involved Continually refines the requirements Each loop through the spiral is a complete phase of the development

19
19 The Evolutionary Model Like the spiral model, an evolutionary approach embraces continual refinement Intermediate versions of the system are created for evaluation by both the developers and the client

About project

Feedback

To ensure the functioning of the site, we use cookies. We share information about your activities on the site with our partners and Google partners: social networks and companies engaged in advertising and web analytics. For more information, see the Privacy Policy and Google Privacy &amp Terms.
Your consent to our cookies if you continue to use this website.