SlideShare a Scribd company logo
1 of 31
Download to read offline
1. Introducción a la
Ingeniería de Software
Ingeniería de Software
UTM 2071
Marzo 2015
1
1.1 Importancia del
Software
La importancia del software en nuestros días es innegable:
todas y cada una de nuestras actividades dependen, de
cierta medida, al software que nos rodea.
¿Quién hace el software que usamos? ¿Cómo se
desarrolla? ¿Qué se necesita para poder desarrollar
software de calidad que resuelvan los problemas que nos
rodean? ¿Hay suficiente software? ¿Necesitamos más y
mejor software?
2
–President Barack Obama
moveForward(100);
3
hourofcode.com
4
1.2 Evolución y Características del Software
5
How Code Has Changed Since The Apollo 11 Moon Landing
http://readwrite.com/2014/07/21/how-computer-code-
has-changed-since-apollo-11-landed-on-the-moon
6
Lehman’s Laws of Software Evolution
1 The law of continuing change. -- Any software system used in the real-world must change or become less and
less useful in that environment.
2 The law of increasing complexity. -- As time flows forwards, entropy increases. That is, as a program evolves, its
structure will become more complex. Just as in physics, this effect can, through great cost, be negated in the short term.
3 The law of large program evolution. -- Program evolution is a self-regulating process and measurements of
system attributes such as size, time between releases, number of reported errors, etc., reveal statistically significant
trends and invariances.
4 The law of organisational stability. -- Over the lifetime of a program, the rate of development of that program is
approximately constant and independent of the resources devoted to system development.
5 The law of conservation of familiarity. -- Over the lifetime of a system, the incremental system change in each
release is approximately constant.
(Lehman, M., (1980), "Programs, life cycles and the laws of software evolution," Proc. IEEE, 15 (3).)
7
Características del Software
In order to answer this question, this lesson introduces some common
software quality characteristics. Six of the most important quality
characteristics are maintainability, correctness, reusability, reliability,
portability, and efficiency.
Online CS Modules: Software Quality Characteristics
courses.cs.vt.edu/~csonline/SE/Lessons/Qualities/index.html
8
Margaret Hamilton
Margaret Hamilton, the Engineer Who
Took the Apollo to the Moon
https://medium.com/@verne/margaret-
hamilton-the-engineer-who-took-the-apollo-to-
the-moon-7d550c73d3fa
9
Software Quality Triangle
10
Características Operativas
a)  Correctness: The software which we are making should meet all the specifications stated by the customer.
b)  Usability/Learnability: The amount of efforts or time required to learn how to use the software should be less. This makes the software user-
friendly even for IT-illiterate people.
c)  Integrity : Just like medicines have side-effects, in the same way a software may have a side-effect i.e. it may affect the working of another
application. But a quality software should not have side effects.
d)   Reliability : The software product should not have any defects. Not only this, it shouldn't fail while execution.
e)   Efficiency : This characteristic relates to the way software uses the available resources. The software should make effective use of the storage
space and execute command as per desired timing requirements.
f)   Security : With the increase in security threats nowadays, this factor is gaining importance. The software shouldn't have ill effects on data /
hardware. Proper measures should be taken to keep data secure from external threats.
g)  Safety : The software should not be hazardous to the environment/life.
Keep Reading : http://www.ianswer4u.com/2011/10/characteristics-of-good-software.html#ixzz3TRmYFJ8n
Under Creative Commons License: Attribution Non-Commercial Share Alike
Follow us: ianswer4u on Facebook
11
Características de Revisión
a) Maintainability : Maintenance of the software should be easy for any kind of user.
b) Flexibility : Changes in the software should be easy to make.
c) Extensibility : It should be easy to increase the functions performed by it.
d) Scalability : It should be very easy to upgrade it for more work(or for more number of users).
e) Testability : Testing the software should be easy.
f) Modularity : Any software is said to made of units and modules which are independent of each other. These
modules are then integrated to make the final software. If the software is divided into separate independent
parts that can be modified, tested separately, it has high modularity.
Keep Reading : http://www.ianswer4u.com/2011/10/characteristics-of-good-software.html#ixzz3TRmwz72n
Under Creative Commons License: Attribution Non-Commercial Share Alike
Follow us: ianswer4u on Facebook
12
Características de Transición
a) Interoperability : Interoperability is the ability of software to exchange information with other
applications and make use of information transparently.
b)  Usability/Learnability: The amount of efforts or time required to learn how to use the software
should be less. This makes the software user-friendly even for IT-illiterate people.
b) Reusability : If we are able to use the software code with some modifications for different purpose
then we call software to be reusable.
c)Portability : The ability of software to perform same functions across all environments and platforms,
demonstrate its portability.
Keep Reading : http://www.ianswer4u.com/2011/10/characteristics-of-good-software.html#ixzz3TRnIamR6
Under Creative Commons License: Attribution Non-Commercial Share Alike
Follow us: ianswer4u on Facebook
13
1.3 Tipos de Software
14
Clasificación de Software
http://www.multiwingspan.co.uk/as2.php?page=soft
1. System Software
2. Application Software
3. Development Software
(4 generaciones)
List of software categories
http://en.wikipedia.org/wiki/
List_of_software_categories
15
–Edsger Dijkstra, The Humble Programmer (EWD340), Communications of the ACM.
“The major cause of the software crisis is that the machines have
become several orders of magnitude more powerful! To put it quite
bluntly: as long as there were no machines, programming was no
problem at all; when we had a few weak computers, programming
became a mild problem, and now we have gigantic computers,
programming has become an equally gigantic problem.”
16
1.4 La Crisis del Software
Características de la Crisis del Software
• Projects running over-budget.
• Projects running over-time.
• Software was very inefficient.
• Software was of low quality.
• Software often did not meet requirements.
• Projects were unmanageable and code difficult to maintain.
• Software was never delivered.
17
¿Por qué la Crisis del Software?
❖ A malady that has carried on this long must be called normal (Booch, p. 8)
❖ Software system requirements are moving targets
❖ There may not be enough good developers around to create all the new
software that users need
❖ A significant portion of developers time must often be dedicated to the
maintenance or preservation of geriatric software
The Software Crisis
http://www.ics.uci.edu/~ziv/ooad/intro_to_se/tsld010.htm
18
Why Do We Still Have Software Development Problems?
Improving Software Development Productivity: Effective Leadership and
Quantitative Methods in Software Management
By Randall W. Jensen
http://www.informit.com/articles/article.aspx?p=2246403
Tarea 1: ¿Por qué tenemos todavía problemas en el desarrollo de software?
Fecha de Entrega: Martes 17 de Marzo, hora de clase
Valor: 20% del 1er Examen Parcial
19
1.5 Definición de Ingeniería de Software
20
1.5 Definición de Ingeniería de Software
❖ Software engineering may be defined as
❖ the study of software process, development principles, techniques and notations
❖ the production of quality software, that is delivered on time, within budget, and
adequately meets its users needs and expectations
❖ the disciplined application of engineering, scientific and mathematical
principles and methods in the economical production of quality software
Ziv Research and Consulting
http://www.ics.uci.edu/~ziv/ooad/intro_to_se/index.htm
21
Ingeniería de Software vs Programación
❖ A Programmer writes a complete program
❖ a software engineer writes a software component that will be combined with components written
by other software engineers to build a system
❖ the component one writes may be modified by others
❖ it may be used by others to build different versions of the system long after one has left the project
❖ Programming is primarily a personal activity
❖ Software engineering is essentially a team activity
❖ Programming is just one aspect of software development
❖ Large software systems must be developed similar to other engineering practices
22
1.6 Paradigmas de Desarrollo de Software
1. Built and Fix model
2. Waterfall y Modified Waterfall models
3. Rapid Prototyping
4. Boehm’s Spiral Model
23
Métodos Ágiles de Desarrollo
Manifesto for Agile Software Development (2001)
❖ Individuals and interactions over Processes and tools
❖ Working software over Comprehensive documentation
❖ Customer collaboration over Contract negotiation
❖ Responding to change over Following a plan
An Introduction to Agile Software Development
http://www.serena.com/docs/repository/solutions/intro-to-agile-devel.pdf
24
Agile Manifesto
1 Customer satisfaction by rapid delivery of useful software
2 Welcome changing requirements, even late in development
3 Working software is delivered frequently (weeks rather than months)
4 Close, daily cooperation between business people and developers
5 Projects are built around motivated individuals, who should be trusted
6 Face-to-face conversation is the best form of communication (co-location)
7 Working software is the principal measure of progress
8 Sustainable development, able to maintain a constant pace
9 Continuous attention to technical excellence and good design
10 Simplicity—the art of maximizing the amount of work not done—is essential
11 Self-organizing teams
12 Regular adaptation to changing circumstance
25
Método de Cascada
26
Desarrollo Ágil Genérico
27
Dos Métodos de Ejemplo
❖ XP (Extreme Programming) ❖ Scrum
28
1.7 Herramientas CASE
❖ CASE (computer-aided software engineering) is the use of a computer-
assisted method to organize and control the development of software,
especially on large, complex projects involving many software components
and people.
❖ From the development, system design, coding, through to the testing and
maintenance, these computerized tools can be used throughout the life-cycle
of software to ensure that the finished product is of high quality, with minimal
defect, and in the most time-efficient and cost-effective manner possible.
❖ Utilizing CASE tools help make this possible for software developers.
29
Beneficios de las herramientas CASE
❖ Some of the benefits of CASE and similar approaches are that, by making the
customer part of the process (through market analysis and focus groups, for
example), a product is more likely to meet real-world requirements.
❖ Because the development process emphasizes testing and redesign, the cost
of servicing a product over its lifetime can be reduced considerably. An
organized approach to development encourages code and design reuse,
reducing costs and improving quality.
❖ Finally, quality products tend to improve a corporation's image, providing a
competitive advantage in the marketplace.
30
Clasificación de Herramientas CASE
Upper CASE
•requirements
•specification
•planning
•design
Lower CASE
•implementation
•integration
•maintenance
31

More Related Content

What's hot

Software life cycle models
Software life cycle modelsSoftware life cycle models
Software life cycle modelsWasif Khan
 
System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)Imran Hussain Khan
 
Lecture 3 software process model
Lecture 3   software process modelLecture 3   software process model
Lecture 3 software process modelIIUI
 
Software Development Life Cycle Testingtypes
Software Development Life Cycle TestingtypesSoftware Development Life Cycle Testingtypes
Software Development Life Cycle Testingtypesvladimir zaremba
 
Software System Engineering - Chapter 2
Software System Engineering - Chapter 2Software System Engineering - Chapter 2
Software System Engineering - Chapter 2Fadhil Ismail
 
Software evolution and maintenance
Software evolution and maintenanceSoftware evolution and maintenance
Software evolution and maintenanceFeliciano Colella
 
Software development life cycle (SDLC)
Software development life cycle (SDLC)Software development life cycle (SDLC)
Software development life cycle (SDLC)Simran Kaur
 
Lecture 02 Software Process Model
Lecture 02 Software Process ModelLecture 02 Software Process Model
Lecture 02 Software Process ModelAchmad Solichin
 
Software Engineering- Crisis and Process Models
Software Engineering- Crisis and Process ModelsSoftware Engineering- Crisis and Process Models
Software Engineering- Crisis and Process ModelsNishu Rastogi
 
962 sech04
962 sech04962 sech04
962 sech04aldwal
 
Software engineering lecture notes
Software engineering   lecture notesSoftware engineering   lecture notes
Software engineering lecture notesAmmar Shafiq
 
SDLC and Software Process Models
SDLC and Software Process ModelsSDLC and Software Process Models
SDLC and Software Process ModelsNana Sarpong
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycleGurban Daniel
 

What's hot (19)

Software life cycle models
Software life cycle modelsSoftware life cycle models
Software life cycle models
 
2. Software process
2. Software process2. Software process
2. Software process
 
System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)
 
Lecture 3 software process model
Lecture 3   software process modelLecture 3   software process model
Lecture 3 software process model
 
Software Development Life Cycle Testingtypes
Software Development Life Cycle TestingtypesSoftware Development Life Cycle Testingtypes
Software Development Life Cycle Testingtypes
 
Sdlc models
Sdlc modelsSdlc models
Sdlc models
 
Software System Engineering - Chapter 2
Software System Engineering - Chapter 2Software System Engineering - Chapter 2
Software System Engineering - Chapter 2
 
Software evolution and maintenance
Software evolution and maintenanceSoftware evolution and maintenance
Software evolution and maintenance
 
Software development life cycle (SDLC)
Software development life cycle (SDLC)Software development life cycle (SDLC)
Software development life cycle (SDLC)
 
Lecture 02 Software Process Model
Lecture 02 Software Process ModelLecture 02 Software Process Model
Lecture 02 Software Process Model
 
Software process
Software processSoftware process
Software process
 
Software Engineering- Crisis and Process Models
Software Engineering- Crisis and Process ModelsSoftware Engineering- Crisis and Process Models
Software Engineering- Crisis and Process Models
 
962 sech04
962 sech04962 sech04
962 sech04
 
Software engineering lecture notes
Software engineering   lecture notesSoftware engineering   lecture notes
Software engineering lecture notes
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
 
SDLC and Software Process Models
SDLC and Software Process ModelsSDLC and Software Process Models
SDLC and Software Process Models
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
 
Sdlc models
Sdlc modelsSdlc models
Sdlc models
 

Viewers also liked

How can you measure the productivity in your company?
How can you measure the productivity in your company?How can you measure the productivity in your company?
How can you measure the productivity in your company?Nexus Electronics
 
Modern Software Productivity Measurement: The Pragmatic Guide
Modern Software Productivity Measurement: The Pragmatic GuideModern Software Productivity Measurement: The Pragmatic Guide
Modern Software Productivity Measurement: The Pragmatic GuideCAST
 
Continuous Cost Reduction to Manage Commodity Cycles delivery version 20161017
Continuous Cost Reduction to Manage Commodity Cycles delivery version 20161017Continuous Cost Reduction to Manage Commodity Cycles delivery version 20161017
Continuous Cost Reduction to Manage Commodity Cycles delivery version 20161017Bish Chanda
 
LeanOps as part of Devops
LeanOps as part of DevopsLeanOps as part of Devops
LeanOps as part of DevopsJohn Willis
 
Deployment presentation
Deployment presentationDeployment presentation
Deployment presentationCorey Purcell
 
categories of computer software
categories of computer softwarecategories of computer software
categories of computer softwareManidhar Chowdary
 
In English: Latest Trends in Software Engineering ( Yazılım Mühendisliğinde S...
In English: Latest Trends in Software Engineering (Yazılım Mühendisliğinde S...In English: Latest Trends in Software Engineering (Yazılım Mühendisliğinde S...
In English: Latest Trends in Software Engineering ( Yazılım Mühendisliğinde S...Vahid Garousi
 
Understanding and improving software productivity
Understanding and improving software productivityUnderstanding and improving software productivity
Understanding and improving software productivityGeorge Valiyaveetil
 
Investing Intelligently In The IT Function
Investing Intelligently In The IT FunctionInvesting Intelligently In The IT Function
Investing Intelligently In The IT FunctionAlan McSweeney
 
Trends in the commoditisation of information technology and the need for stra...
Trends in the commoditisation of information technology and the need for stra...Trends in the commoditisation of information technology and the need for stra...
Trends in the commoditisation of information technology and the need for stra...Alan McSweeney
 
Value Stream Mapping Process
Value Stream Mapping ProcessValue Stream Mapping Process
Value Stream Mapping ProcessAnand Subramaniam
 
Value Stream Transformation: 10 Keys to Success
Value Stream Transformation: 10 Keys to SuccessValue Stream Transformation: 10 Keys to Success
Value Stream Transformation: 10 Keys to SuccessTKMG, Inc.
 
value stream mapping and metrics based process mapping
value stream mapping and metrics based process mappingvalue stream mapping and metrics based process mapping
value stream mapping and metrics based process mappingTKMG, Inc.
 
Translating Big Raw Data Into Small Actionable Information
Translating Big Raw Data Into Small Actionable InformationTranslating Big Raw Data Into Small Actionable Information
Translating Big Raw Data Into Small Actionable InformationAlan McSweeney
 

Viewers also liked (16)

How can you measure the productivity in your company?
How can you measure the productivity in your company?How can you measure the productivity in your company?
How can you measure the productivity in your company?
 
Modern Software Productivity Measurement: The Pragmatic Guide
Modern Software Productivity Measurement: The Pragmatic GuideModern Software Productivity Measurement: The Pragmatic Guide
Modern Software Productivity Measurement: The Pragmatic Guide
 
Continuous Cost Reduction to Manage Commodity Cycles delivery version 20161017
Continuous Cost Reduction to Manage Commodity Cycles delivery version 20161017Continuous Cost Reduction to Manage Commodity Cycles delivery version 20161017
Continuous Cost Reduction to Manage Commodity Cycles delivery version 20161017
 
LeanOps as part of Devops
LeanOps as part of DevopsLeanOps as part of Devops
LeanOps as part of Devops
 
Deployment presentation
Deployment presentationDeployment presentation
Deployment presentation
 
categories of computer software
categories of computer softwarecategories of computer software
categories of computer software
 
In English: Latest Trends in Software Engineering ( Yazılım Mühendisliğinde S...
In English: Latest Trends in Software Engineering (Yazılım Mühendisliğinde S...In English: Latest Trends in Software Engineering (Yazılım Mühendisliğinde S...
In English: Latest Trends in Software Engineering ( Yazılım Mühendisliğinde S...
 
Understanding and improving software productivity
Understanding and improving software productivityUnderstanding and improving software productivity
Understanding and improving software productivity
 
Investing Intelligently In The IT Function
Investing Intelligently In The IT FunctionInvesting Intelligently In The IT Function
Investing Intelligently In The IT Function
 
Trends in the commoditisation of information technology and the need for stra...
Trends in the commoditisation of information technology and the need for stra...Trends in the commoditisation of information technology and the need for stra...
Trends in the commoditisation of information technology and the need for stra...
 
System software and Application software
System software and Application softwareSystem software and Application software
System software and Application software
 
Enterprise software delivery
Enterprise software deliveryEnterprise software delivery
Enterprise software delivery
 
Value Stream Mapping Process
Value Stream Mapping ProcessValue Stream Mapping Process
Value Stream Mapping Process
 
Value Stream Transformation: 10 Keys to Success
Value Stream Transformation: 10 Keys to SuccessValue Stream Transformation: 10 Keys to Success
Value Stream Transformation: 10 Keys to Success
 
value stream mapping and metrics based process mapping
value stream mapping and metrics based process mappingvalue stream mapping and metrics based process mapping
value stream mapping and metrics based process mapping
 
Translating Big Raw Data Into Small Actionable Information
Translating Big Raw Data Into Small Actionable InformationTranslating Big Raw Data Into Small Actionable Information
Translating Big Raw Data Into Small Actionable Information
 

Similar to 1. introducción a la Ingeniería de Software (UTM 2071)

The Product and Process(1).pdf
The Product and Process(1).pdfThe Product and Process(1).pdf
The Product and Process(1).pdfShivareddyGangam
 
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERING
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERINGUnit i FUNDAMENTALS OF SOFTWARE ENGINEERING
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERINGSangeetha Rangarajan
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1gvkmku
 
SoftwareEngineering.pptx
SoftwareEngineering.pptxSoftwareEngineering.pptx
SoftwareEngineering.pptxpriyaaresearch
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycleAfrasiyab Haider
 
Software engineering introduction
Software engineering introductionSoftware engineering introduction
Software engineering introductionVishal Singh
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 113harpreet
 
Software Engineering Unit-1
Software Engineering Unit-1Software Engineering Unit-1
Software Engineering Unit-1Samura Daniel
 
2.-IT-266_APDET-Module-2-of-3.pptx
2.-IT-266_APDET-Module-2-of-3.pptx2.-IT-266_APDET-Module-2-of-3.pptx
2.-IT-266_APDET-Module-2-of-3.pptxKENNEDYDONATO1
 
Intoduction to software engineering part 1
Intoduction to software engineering part 1Intoduction to software engineering part 1
Intoduction to software engineering part 1Rupesh Vaishnav
 
chapter-1-software-and-software-engineering-software-engineering-a-practition...
chapter-1-software-and-software-engineering-software-engineering-a-practition...chapter-1-software-and-software-engineering-software-engineering-a-practition...
chapter-1-software-and-software-engineering-software-engineering-a-practition...Archana Sable
 
SWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software EngineeringSWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software Engineeringghayour abbas
 
construction management system final year report
construction management system final year reportconstruction management system final year report
construction management system final year reportchiragbarasiya
 

Similar to 1. introducción a la Ingeniería de Software (UTM 2071) (20)

The Product and Process(1).pdf
The Product and Process(1).pdfThe Product and Process(1).pdf
The Product and Process(1).pdf
 
Sepm t1
Sepm t1Sepm t1
Sepm t1
 
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERING
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERINGUnit i FUNDAMENTALS OF SOFTWARE ENGINEERING
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERING
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
SoftwareEngineering.pptx
SoftwareEngineering.pptxSoftwareEngineering.pptx
SoftwareEngineering.pptx
 
SoftwareEngineering.pptx
SoftwareEngineering.pptxSoftwareEngineering.pptx
SoftwareEngineering.pptx
 
Lecture1422914635
Lecture1422914635Lecture1422914635
Lecture1422914635
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
 
Software engineering introduction
Software engineering introductionSoftware engineering introduction
Software engineering introduction
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
Software Engineering Unit-1
Software Engineering Unit-1Software Engineering Unit-1
Software Engineering Unit-1
 
Unit1
Unit1Unit1
Unit1
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
2.-IT-266_APDET-Module-2-of-3.pptx
2.-IT-266_APDET-Module-2-of-3.pptx2.-IT-266_APDET-Module-2-of-3.pptx
2.-IT-266_APDET-Module-2-of-3.pptx
 
Importance of software engineering
Importance of software engineeringImportance of software engineering
Importance of software engineering
 
Intoduction to software engineering part 1
Intoduction to software engineering part 1Intoduction to software engineering part 1
Intoduction to software engineering part 1
 
chapter-1-software-and-software-engineering-software-engineering-a-practition...
chapter-1-software-and-software-engineering-software-engineering-a-practition...chapter-1-software-and-software-engineering-software-engineering-a-practition...
chapter-1-software-and-software-engineering-software-engineering-a-practition...
 
SWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software EngineeringSWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software Engineering
 
construction management system final year report
construction management system final year reportconstruction management system final year report
construction management system final year report
 

More from Mario A Moreno Rocha

Definición del Examen Final (UTM 2017)
Definición del Examen Final (UTM 2017)Definición del Examen Final (UTM 2017)
Definición del Examen Final (UTM 2017)Mario A Moreno Rocha
 
¿Cómo haría yo el 3er parcial?
¿Cómo haría yo el 3er parcial?¿Cómo haría yo el 3er parcial?
¿Cómo haría yo el 3er parcial?Mario A Moreno Rocha
 
6. Administración de la Calidad de Software
6. Administración de la Calidad de Software6. Administración de la Calidad de Software
6. Administración de la Calidad de SoftwareMario A Moreno Rocha
 
Ingeniería de Software (UTM) - Tercer Examen Parcial
Ingeniería de Software (UTM) - Tercer Examen ParcialIngeniería de Software (UTM) - Tercer Examen Parcial
Ingeniería de Software (UTM) - Tercer Examen ParcialMario A Moreno Rocha
 
4. Diseño e Implementación de Software
4. Diseño e Implementación de Software4. Diseño e Implementación de Software
4. Diseño e Implementación de SoftwareMario A Moreno Rocha
 
2. Administración de Proyectos de Software (UTM 2071)
2. Administración de Proyectos de Software (UTM 2071)2. Administración de Proyectos de Software (UTM 2071)
2. Administración de Proyectos de Software (UTM 2071)Mario A Moreno Rocha
 
Plan de Estudios Ingeniería de Software (2071)
Plan de Estudios Ingeniería de Software (2071)Plan de Estudios Ingeniería de Software (2071)
Plan de Estudios Ingeniería de Software (2071)Mario A Moreno Rocha
 
Presentación Ingeniería de Software (2071)
Presentación Ingeniería de Software (2071)Presentación Ingeniería de Software (2071)
Presentación Ingeniería de Software (2071)Mario A Moreno Rocha
 
Redes Sociales: Una vuelta por el mundo (Expo Orienta 2015)
Redes Sociales: Una vuelta por el mundo (Expo Orienta 2015)Redes Sociales: Una vuelta por el mundo (Expo Orienta 2015)
Redes Sociales: Una vuelta por el mundo (Expo Orienta 2015)Mario A Moreno Rocha
 
Una Aproximación a la Interacción Humano-Computadora (ITD 2015)
Una Aproximación a la Interacción Humano-Computadora (ITD 2015)Una Aproximación a la Interacción Humano-Computadora (ITD 2015)
Una Aproximación a la Interacción Humano-Computadora (ITD 2015)Mario A Moreno Rocha
 
UX Nights Vol. 4 Estudios Contextuales
UX Nights Vol. 4 Estudios ContextualesUX Nights Vol. 4 Estudios Contextuales
UX Nights Vol. 4 Estudios ContextualesMario A Moreno Rocha
 
Desarrollando un estudio de usabilidad para sitios gubernamentales mexicanos:...
Desarrollando un estudio de usabilidad para sitios gubernamentales mexicanos:...Desarrollando un estudio de usabilidad para sitios gubernamentales mexicanos:...
Desarrollando un estudio de usabilidad para sitios gubernamentales mexicanos:...Mario A Moreno Rocha
 
Capítulo 8: Usabilidad y experiencia de usuario
Capítulo 8: Usabilidad y experiencia de usuarioCapítulo 8: Usabilidad y experiencia de usuario
Capítulo 8: Usabilidad y experiencia de usuarioMario A Moreno Rocha
 
Oportunidades de estancias y prácticas en la UTM 2014-2015
Oportunidades de estancias y prácticas en la UTM 2014-2015Oportunidades de estancias y prácticas en la UTM 2014-2015
Oportunidades de estancias y prácticas en la UTM 2014-2015Mario A Moreno Rocha
 
Taller de Desarrollo de Interfaces (Conalep 2014)
Taller de Desarrollo de Interfaces (Conalep 2014)Taller de Desarrollo de Interfaces (Conalep 2014)
Taller de Desarrollo de Interfaces (Conalep 2014)Mario A Moreno Rocha
 

More from Mario A Moreno Rocha (20)

UsaLab presentation (ENG)
UsaLab presentation (ENG)UsaLab presentation (ENG)
UsaLab presentation (ENG)
 
Definición del Examen Final (UTM 2017)
Definición del Examen Final (UTM 2017)Definición del Examen Final (UTM 2017)
Definición del Examen Final (UTM 2017)
 
¿Cómo haría yo el 3er parcial?
¿Cómo haría yo el 3er parcial?¿Cómo haría yo el 3er parcial?
¿Cómo haría yo el 3er parcial?
 
7. Mantenimiento de Software
7. Mantenimiento de Software7. Mantenimiento de Software
7. Mantenimiento de Software
 
7. Mantenimiento de Software
7. Mantenimiento de Software7. Mantenimiento de Software
7. Mantenimiento de Software
 
6. Administración de la Calidad de Software
6. Administración de la Calidad de Software6. Administración de la Calidad de Software
6. Administración de la Calidad de Software
 
Ingeniería de Software (UTM) - Tercer Examen Parcial
Ingeniería de Software (UTM) - Tercer Examen ParcialIngeniería de Software (UTM) - Tercer Examen Parcial
Ingeniería de Software (UTM) - Tercer Examen Parcial
 
5. Métodos de Prueba de Software
5. Métodos de Prueba de Software5. Métodos de Prueba de Software
5. Métodos de Prueba de Software
 
4. Diseño e Implementación de Software
4. Diseño e Implementación de Software4. Diseño e Implementación de Software
4. Diseño e Implementación de Software
 
3. Análisis de Requerimientos
3. Análisis de Requerimientos3. Análisis de Requerimientos
3. Análisis de Requerimientos
 
2. Administración de Proyectos de Software (UTM 2071)
2. Administración de Proyectos de Software (UTM 2071)2. Administración de Proyectos de Software (UTM 2071)
2. Administración de Proyectos de Software (UTM 2071)
 
Plan de Estudios Ingeniería de Software (2071)
Plan de Estudios Ingeniería de Software (2071)Plan de Estudios Ingeniería de Software (2071)
Plan de Estudios Ingeniería de Software (2071)
 
Presentación Ingeniería de Software (2071)
Presentación Ingeniería de Software (2071)Presentación Ingeniería de Software (2071)
Presentación Ingeniería de Software (2071)
 
Redes Sociales: Una vuelta por el mundo (Expo Orienta 2015)
Redes Sociales: Una vuelta por el mundo (Expo Orienta 2015)Redes Sociales: Una vuelta por el mundo (Expo Orienta 2015)
Redes Sociales: Una vuelta por el mundo (Expo Orienta 2015)
 
Una Aproximación a la Interacción Humano-Computadora (ITD 2015)
Una Aproximación a la Interacción Humano-Computadora (ITD 2015)Una Aproximación a la Interacción Humano-Computadora (ITD 2015)
Una Aproximación a la Interacción Humano-Computadora (ITD 2015)
 
UX Nights Vol. 4 Estudios Contextuales
UX Nights Vol. 4 Estudios ContextualesUX Nights Vol. 4 Estudios Contextuales
UX Nights Vol. 4 Estudios Contextuales
 
Desarrollando un estudio de usabilidad para sitios gubernamentales mexicanos:...
Desarrollando un estudio de usabilidad para sitios gubernamentales mexicanos:...Desarrollando un estudio de usabilidad para sitios gubernamentales mexicanos:...
Desarrollando un estudio de usabilidad para sitios gubernamentales mexicanos:...
 
Capítulo 8: Usabilidad y experiencia de usuario
Capítulo 8: Usabilidad y experiencia de usuarioCapítulo 8: Usabilidad y experiencia de usuario
Capítulo 8: Usabilidad y experiencia de usuario
 
Oportunidades de estancias y prácticas en la UTM 2014-2015
Oportunidades de estancias y prácticas en la UTM 2014-2015Oportunidades de estancias y prácticas en la UTM 2014-2015
Oportunidades de estancias y prácticas en la UTM 2014-2015
 
Taller de Desarrollo de Interfaces (Conalep 2014)
Taller de Desarrollo de Interfaces (Conalep 2014)Taller de Desarrollo de Interfaces (Conalep 2014)
Taller de Desarrollo de Interfaces (Conalep 2014)
 

Recently uploaded

The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfakmcokerachita
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting DataJhengPantaleon
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docxPoojaSen20
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 

Recently uploaded (20)

The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdf
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docx
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 

1. introducción a la Ingeniería de Software (UTM 2071)

  • 1. 1. Introducción a la Ingeniería de Software Ingeniería de Software UTM 2071 Marzo 2015 1
  • 2. 1.1 Importancia del Software La importancia del software en nuestros días es innegable: todas y cada una de nuestras actividades dependen, de cierta medida, al software que nos rodea. ¿Quién hace el software que usamos? ¿Cómo se desarrolla? ¿Qué se necesita para poder desarrollar software de calidad que resuelvan los problemas que nos rodean? ¿Hay suficiente software? ¿Necesitamos más y mejor software? 2
  • 5. 1.2 Evolución y Características del Software 5
  • 6. How Code Has Changed Since The Apollo 11 Moon Landing http://readwrite.com/2014/07/21/how-computer-code- has-changed-since-apollo-11-landed-on-the-moon 6
  • 7. Lehman’s Laws of Software Evolution 1 The law of continuing change. -- Any software system used in the real-world must change or become less and less useful in that environment. 2 The law of increasing complexity. -- As time flows forwards, entropy increases. That is, as a program evolves, its structure will become more complex. Just as in physics, this effect can, through great cost, be negated in the short term. 3 The law of large program evolution. -- Program evolution is a self-regulating process and measurements of system attributes such as size, time between releases, number of reported errors, etc., reveal statistically significant trends and invariances. 4 The law of organisational stability. -- Over the lifetime of a program, the rate of development of that program is approximately constant and independent of the resources devoted to system development. 5 The law of conservation of familiarity. -- Over the lifetime of a system, the incremental system change in each release is approximately constant. (Lehman, M., (1980), "Programs, life cycles and the laws of software evolution," Proc. IEEE, 15 (3).) 7
  • 8. Características del Software In order to answer this question, this lesson introduces some common software quality characteristics. Six of the most important quality characteristics are maintainability, correctness, reusability, reliability, portability, and efficiency. Online CS Modules: Software Quality Characteristics courses.cs.vt.edu/~csonline/SE/Lessons/Qualities/index.html 8
  • 9. Margaret Hamilton Margaret Hamilton, the Engineer Who Took the Apollo to the Moon https://medium.com/@verne/margaret- hamilton-the-engineer-who-took-the-apollo-to- the-moon-7d550c73d3fa 9
  • 11. Características Operativas a)  Correctness: The software which we are making should meet all the specifications stated by the customer. b)  Usability/Learnability: The amount of efforts or time required to learn how to use the software should be less. This makes the software user- friendly even for IT-illiterate people. c)  Integrity : Just like medicines have side-effects, in the same way a software may have a side-effect i.e. it may affect the working of another application. But a quality software should not have side effects. d)   Reliability : The software product should not have any defects. Not only this, it shouldn't fail while execution. e)   Efficiency : This characteristic relates to the way software uses the available resources. The software should make effective use of the storage space and execute command as per desired timing requirements. f)   Security : With the increase in security threats nowadays, this factor is gaining importance. The software shouldn't have ill effects on data / hardware. Proper measures should be taken to keep data secure from external threats. g)  Safety : The software should not be hazardous to the environment/life. Keep Reading : http://www.ianswer4u.com/2011/10/characteristics-of-good-software.html#ixzz3TRmYFJ8n Under Creative Commons License: Attribution Non-Commercial Share Alike Follow us: ianswer4u on Facebook 11
  • 12. Características de Revisión a) Maintainability : Maintenance of the software should be easy for any kind of user. b) Flexibility : Changes in the software should be easy to make. c) Extensibility : It should be easy to increase the functions performed by it. d) Scalability : It should be very easy to upgrade it for more work(or for more number of users). e) Testability : Testing the software should be easy. f) Modularity : Any software is said to made of units and modules which are independent of each other. These modules are then integrated to make the final software. If the software is divided into separate independent parts that can be modified, tested separately, it has high modularity. Keep Reading : http://www.ianswer4u.com/2011/10/characteristics-of-good-software.html#ixzz3TRmwz72n Under Creative Commons License: Attribution Non-Commercial Share Alike Follow us: ianswer4u on Facebook 12
  • 13. Características de Transición a) Interoperability : Interoperability is the ability of software to exchange information with other applications and make use of information transparently. b)  Usability/Learnability: The amount of efforts or time required to learn how to use the software should be less. This makes the software user-friendly even for IT-illiterate people. b) Reusability : If we are able to use the software code with some modifications for different purpose then we call software to be reusable. c)Portability : The ability of software to perform same functions across all environments and platforms, demonstrate its portability. Keep Reading : http://www.ianswer4u.com/2011/10/characteristics-of-good-software.html#ixzz3TRnIamR6 Under Creative Commons License: Attribution Non-Commercial Share Alike Follow us: ianswer4u on Facebook 13
  • 14. 1.3 Tipos de Software 14
  • 15. Clasificación de Software http://www.multiwingspan.co.uk/as2.php?page=soft 1. System Software 2. Application Software 3. Development Software (4 generaciones) List of software categories http://en.wikipedia.org/wiki/ List_of_software_categories 15
  • 16. –Edsger Dijkstra, The Humble Programmer (EWD340), Communications of the ACM. “The major cause of the software crisis is that the machines have become several orders of magnitude more powerful! To put it quite bluntly: as long as there were no machines, programming was no problem at all; when we had a few weak computers, programming became a mild problem, and now we have gigantic computers, programming has become an equally gigantic problem.” 16 1.4 La Crisis del Software
  • 17. Características de la Crisis del Software • Projects running over-budget. • Projects running over-time. • Software was very inefficient. • Software was of low quality. • Software often did not meet requirements. • Projects were unmanageable and code difficult to maintain. • Software was never delivered. 17
  • 18. ¿Por qué la Crisis del Software? ❖ A malady that has carried on this long must be called normal (Booch, p. 8) ❖ Software system requirements are moving targets ❖ There may not be enough good developers around to create all the new software that users need ❖ A significant portion of developers time must often be dedicated to the maintenance or preservation of geriatric software The Software Crisis http://www.ics.uci.edu/~ziv/ooad/intro_to_se/tsld010.htm 18
  • 19. Why Do We Still Have Software Development Problems? Improving Software Development Productivity: Effective Leadership and Quantitative Methods in Software Management By Randall W. Jensen http://www.informit.com/articles/article.aspx?p=2246403 Tarea 1: ¿Por qué tenemos todavía problemas en el desarrollo de software? Fecha de Entrega: Martes 17 de Marzo, hora de clase Valor: 20% del 1er Examen Parcial 19
  • 20. 1.5 Definición de Ingeniería de Software 20
  • 21. 1.5 Definición de Ingeniería de Software ❖ Software engineering may be defined as ❖ the study of software process, development principles, techniques and notations ❖ the production of quality software, that is delivered on time, within budget, and adequately meets its users needs and expectations ❖ the disciplined application of engineering, scientific and mathematical principles and methods in the economical production of quality software Ziv Research and Consulting http://www.ics.uci.edu/~ziv/ooad/intro_to_se/index.htm 21
  • 22. Ingeniería de Software vs Programación ❖ A Programmer writes a complete program ❖ a software engineer writes a software component that will be combined with components written by other software engineers to build a system ❖ the component one writes may be modified by others ❖ it may be used by others to build different versions of the system long after one has left the project ❖ Programming is primarily a personal activity ❖ Software engineering is essentially a team activity ❖ Programming is just one aspect of software development ❖ Large software systems must be developed similar to other engineering practices 22
  • 23. 1.6 Paradigmas de Desarrollo de Software 1. Built and Fix model 2. Waterfall y Modified Waterfall models 3. Rapid Prototyping 4. Boehm’s Spiral Model 23
  • 24. Métodos Ágiles de Desarrollo Manifesto for Agile Software Development (2001) ❖ Individuals and interactions over Processes and tools ❖ Working software over Comprehensive documentation ❖ Customer collaboration over Contract negotiation ❖ Responding to change over Following a plan An Introduction to Agile Software Development http://www.serena.com/docs/repository/solutions/intro-to-agile-devel.pdf 24
  • 25. Agile Manifesto 1 Customer satisfaction by rapid delivery of useful software 2 Welcome changing requirements, even late in development 3 Working software is delivered frequently (weeks rather than months) 4 Close, daily cooperation between business people and developers 5 Projects are built around motivated individuals, who should be trusted 6 Face-to-face conversation is the best form of communication (co-location) 7 Working software is the principal measure of progress 8 Sustainable development, able to maintain a constant pace 9 Continuous attention to technical excellence and good design 10 Simplicity—the art of maximizing the amount of work not done—is essential 11 Self-organizing teams 12 Regular adaptation to changing circumstance 25
  • 28. Dos Métodos de Ejemplo ❖ XP (Extreme Programming) ❖ Scrum 28
  • 29. 1.7 Herramientas CASE ❖ CASE (computer-aided software engineering) is the use of a computer- assisted method to organize and control the development of software, especially on large, complex projects involving many software components and people. ❖ From the development, system design, coding, through to the testing and maintenance, these computerized tools can be used throughout the life-cycle of software to ensure that the finished product is of high quality, with minimal defect, and in the most time-efficient and cost-effective manner possible. ❖ Utilizing CASE tools help make this possible for software developers. 29
  • 30. Beneficios de las herramientas CASE ❖ Some of the benefits of CASE and similar approaches are that, by making the customer part of the process (through market analysis and focus groups, for example), a product is more likely to meet real-world requirements. ❖ Because the development process emphasizes testing and redesign, the cost of servicing a product over its lifetime can be reduced considerably. An organized approach to development encourages code and design reuse, reducing costs and improving quality. ❖ Finally, quality products tend to improve a corporation's image, providing a competitive advantage in the marketplace. 30
  • 31. Clasificación de Herramientas CASE Upper CASE •requirements •specification •planning •design Lower CASE •implementation •integration •maintenance 31