SlideShare ist ein Scribd-Unternehmen logo
1 von 5
Downloaden Sie, um offline zu lesen
************ Lean [POPPENDIECK-2003] Chapter 1, 2 **************************************************
Lean is: “A systematic approach to identifying and eliminating waste through continuous improvement, flowing the
product at the pull of the customer in pursuit of perfection.” Lean is centered around preserving value with less work.
Lean Software Development is the application of lean principles to the craft of software development.
Just-in-time approach. Stop trying to maximize local efficiencies.
Practice: Stop-the-Line culture.
1. Preoccupation with failure
2. Reluctance to simplify
3. Sensitivity to operations
4. Commitment to learn from mistakes
5. Deference to expertise
The Toyota Product Development System, Four cornerstone
elements:
1. System design by an entrepreneurial leader
2. Expert engineering workforce
3. Responsibility based planning and control
4. Self-based concurrent engineering
Principles are underlying truths that don’t change over time
or space, while practices are the application of principles to
a particular situation.
The learn-by-doing approach: Adopt a coherent set of
practices with confidence that this will eventually lead to
understanding of the principles behind them. Then there is
an understand-before-doing approach: Understand the
underlying principles, and use them to develop practices for
specific situations.
Software Embedded software is the part of a product that is expected to change. If it didn’t need to change, then it
might as well be hardware.
Development is the process of transforming ideas into products.
Kanban is a method for managing the creation of products with an emphasis on continual delivery while not
overburdening the development team.
Seven Principles of Lean Software Development
1. Eliminate waste. A common agile development practice is the ‘retrospective’, which is the process of the team
meeting after each short iteration to discuss what went well, what didn’t, and what could be done differently in
the next iteration. This iterative process of learning and continual improvement is an important part of
identifying waste and eliminating it.
2. Build quality in. There are quality assurance processes designed to avoid quality issues in the first place.
Examples of this are Pair Programming, Test Driven Development, constant feedback and automation. Myth:
The Job of Testing Is to Find Defects
3. Create Knowledge. Things to do to help create knowledge: Pair programming, code reviews, documentation,
wiki, commented code, knowledge sharing sessions, training. Myth : Predictions Create Predictability
4. Defer Commitment. Decide as late as possible, particularly for decisions that are irreversible, or at least will be
impractical to reverse. Architect the solution so that fewer commitments are irreversible. And defer
commitment on irreversible decisions to the latest point possible. Myth: Planning Is Commitment
5. Deliver Fast. An effective organization doesn’t demand teams do more than they are capable of, but instead
asks them to self-organize and determine what they can accomplish. Constraining these teams to delivering
potentially shippable solutions on a regular basis motivates them to stay focused on continuously adding value.
Myth: Haste Makes Waste
6. Respect People. The implication is that you need a lean governance strategy that focuses on motivating and
enabling IT teams—not on controlling them. Myth: There Is One Best Way
7. Optimizing the whole. Must look at the bigger picture. Optimize the whole value stream, not just individual
functions or teams. Myth: Optimize By Decomposition
************ Software Modeling - UML [FOWLER-2002] Chapter 3, 4, 10 ************************************
A class diagram describes the types of objects in the System and the various kinds of static relationships that exist
among them. Class diagrams also show the properties and operations of a Class and the constraints that apply to the
way objects are connected. The UML uses the term feature as a general term that covers properties and operations of
a Class.
Properties represent structural features of a Class. Properties are a single concept, but they appear in two quite distinct
notations: attributes and associations.
The attribute notation describes a property as a line of text within the
class box itself.
An association is a solid line between
two classes, directed from the source
class to the target class. The name of
the property goes at the target end of
the association, together with its
multiplicity. The target end of the
association links to the class that is the
type of the property.
The multiplicity of a property is an indication of how many objects may fill the property. The most common
multiplicities you will see are
 1 (An order must have exactly one customer.)
 0..1 (A corporate customer may or may not have a single sales rep.)
 *(A customer need not place an Order and there is no upper limit to the number of Orders a Customer may
place-zero or more orders.)
A bidirectional association is a pair of properties that are
linked together as inverses.
Operations are the actions that a class knows to carry out. An operation is something that is invoked on an object-the
procedure declaration-whereas a method is the body of a procedure.
Typical example of generalization involves the personal and corporate customers of a business. They have differences
but also many similarities. The similarities can be placed in a general Customer class (the Supertype), with Personal
Customer and Corporate Customer as subtypes.
An important principle of using inheritance effectively is substitutability. I should be able to substitute a Corporate
Customer within any Code that requires a Customer, and everything should work fine.
Notes are comments in the diagrams. Notes can stand on their own, or they can be linked with a dashed line to the
elements they are commenting
A dependency exists between two
elements if changes to the definition of
one element (the supplier) may cause
changes to the other (the client).
Interaction diagrams describe how groups of
objects collaborate in some behavior. The most
common is the sequence diagram. A sequence
diagram captures the behavior of a single
scenario. The diagram shows a number of
example objects and the messages that are
passed between these objects within the use
case.
Centralized control, one participant does all
the processing.
Distributed control, processing is split among
many participants, each doing a little bit.
Both loops and conditionals use interaction frames, which
are ways of marking off a piece of a sequence diagram.
If a caller sends a synchronous message, it must wait until
the message is done, such as invoking a subroutine. If a
caller sends an asynchronous message, it can continue
processing and doesn't have to wait for a response.
You should use sequence diagrams when you want to look at the behavior of several objects within a single use case.
Sequence diagrams are good at showing collaborations among the objects; they are not so good at precise definition of
the behavior.
State machine diagrams are a familiar
technique to describe the behavior of a
System. In object-oriented approaches, you
draw a State machine diagram for a single
class to show the lifetime behavior of a single
object.
States can react to events without transition,
using internal activities: putting the event,
guard, and activity inside the state box itself.
An internal activity is similar to a self-
transition: a transition that loops back to the
same state.
The entry activity is executed whenever you enter a states the exit
activity, whenever you leave. However, internal activities do not
trigger the entry and exit activities; that is the difference between
internal activities and self-transitions.
Several states share common transitions and
internal activities. In these Gases, you can
make them substates and move the shared
behavior into a superstate.
States can be broken into several orthogonal
state diagrams that run concurrently.
A state diagram can be implemented in
three main ways: nested switch, state
patterns and state tables.
Stare diagrams are good at describing the behavior of an object across several use cases. Stare diagrams are not very
good at describing behavior that involves a number of objects collaborating.

Weitere Àhnliche Inhalte

Andere mochten auch

Proyecto de aula escuela rural renacer
Proyecto de aula escuela rural renacerProyecto de aula escuela rural renacer
Proyecto de aula escuela rural renacergivibla
 
Libro digital
Libro digitalLibro digital
Libro digitallu1sd4v1d
 
Sitios
SitiosSitios
Sitiosenuti
 
FilantrĂłpicos
FilantrĂłpicosFilantrĂłpicos
FilantrĂłpicosClaudio Osti
 
Caso3m
Caso3mCaso3m
Caso3mtatiana0
 
GlobalizaciĂłn de la pobreza y nuevo orden mundial
GlobalizaciĂłn de la pobreza y nuevo orden mundialGlobalizaciĂłn de la pobreza y nuevo orden mundial
GlobalizaciĂłn de la pobreza y nuevo orden mundialpaulvt
 
100 job-search-tips (1)
100 job-search-tips (1)100 job-search-tips (1)
100 job-search-tips (1)Confidential
 
Jacqueline analuisa nivel propedeĂștico
Jacqueline analuisa nivel propedeĂșticoJacqueline analuisa nivel propedeĂștico
Jacqueline analuisa nivel propedeĂșticoyacque-1992
 
Living and Learning with New Media - Digital Youth Project
Living and Learning with New Media - Digital Youth ProjectLiving and Learning with New Media - Digital Youth Project
Living and Learning with New Media - Digital Youth ProjectGenaro Bardy
 
FusÔes & aquisiçÔes relatório final
FusÔes & aquisiçÔes relatório finalFusÔes & aquisiçÔes relatório final
FusÔes & aquisiçÔes relatório finalNuno Tasso de Figueiredo
 
Dn11 u3 a17_igpc
Dn11 u3 a17_igpcDn11 u3 a17_igpc
Dn11 u3 a17_igpcaeson
 
Trabalho de cp Orientado pelo Prof.Dr. Nilo Sampaio (jessica lopes, laiane ca...
Trabalho de cp Orientado pelo Prof.Dr. Nilo Sampaio (jessica lopes, laiane ca...Trabalho de cp Orientado pelo Prof.Dr. Nilo Sampaio (jessica lopes, laiane ca...
Trabalho de cp Orientado pelo Prof.Dr. Nilo Sampaio (jessica lopes, laiane ca...Nilo Sampaio
 
La enfermedad de alzheimer
La enfermedad de alzheimerLa enfermedad de alzheimer
La enfermedad de alzheimerGinaira
 
ReuniĂłn padres (primer cuatrimestre 2011/2012)
ReuniĂłn padres (primer cuatrimestre 2011/2012)ReuniĂłn padres (primer cuatrimestre 2011/2012)
ReuniĂłn padres (primer cuatrimestre 2011/2012)Okidoki IR
 

Andere mochten auch (20)

Peer to-peer
Peer to-peerPeer to-peer
Peer to-peer
 
Proyecto de aula escuela rural renacer
Proyecto de aula escuela rural renacerProyecto de aula escuela rural renacer
Proyecto de aula escuela rural renacer
 
Libro digital
Libro digitalLibro digital
Libro digital
 
Sitios
SitiosSitios
Sitios
 
Natii
NatiiNatii
Natii
 
FilantrĂłpicos
FilantrĂłpicosFilantrĂłpicos
FilantrĂłpicos
 
Silabo informatica
Silabo informaticaSilabo informatica
Silabo informatica
 
Caso3m
Caso3mCaso3m
Caso3m
 
Limites
LimitesLimites
Limites
 
P cb-01
P cb-01P cb-01
P cb-01
 
GlobalizaciĂłn de la pobreza y nuevo orden mundial
GlobalizaciĂłn de la pobreza y nuevo orden mundialGlobalizaciĂłn de la pobreza y nuevo orden mundial
GlobalizaciĂłn de la pobreza y nuevo orden mundial
 
100 job-search-tips (1)
100 job-search-tips (1)100 job-search-tips (1)
100 job-search-tips (1)
 
Media a2 evaluation
Media a2 evaluationMedia a2 evaluation
Media a2 evaluation
 
Jacqueline analuisa nivel propedeĂștico
Jacqueline analuisa nivel propedeĂșticoJacqueline analuisa nivel propedeĂștico
Jacqueline analuisa nivel propedeĂștico
 
Living and Learning with New Media - Digital Youth Project
Living and Learning with New Media - Digital Youth ProjectLiving and Learning with New Media - Digital Youth Project
Living and Learning with New Media - Digital Youth Project
 
FusÔes & aquisiçÔes relatório final
FusÔes & aquisiçÔes relatório finalFusÔes & aquisiçÔes relatório final
FusÔes & aquisiçÔes relatório final
 
Dn11 u3 a17_igpc
Dn11 u3 a17_igpcDn11 u3 a17_igpc
Dn11 u3 a17_igpc
 
Trabalho de cp Orientado pelo Prof.Dr. Nilo Sampaio (jessica lopes, laiane ca...
Trabalho de cp Orientado pelo Prof.Dr. Nilo Sampaio (jessica lopes, laiane ca...Trabalho de cp Orientado pelo Prof.Dr. Nilo Sampaio (jessica lopes, laiane ca...
Trabalho de cp Orientado pelo Prof.Dr. Nilo Sampaio (jessica lopes, laiane ca...
 
La enfermedad de alzheimer
La enfermedad de alzheimerLa enfermedad de alzheimer
La enfermedad de alzheimer
 
ReuniĂłn padres (primer cuatrimestre 2011/2012)
ReuniĂłn padres (primer cuatrimestre 2011/2012)ReuniĂłn padres (primer cuatrimestre 2011/2012)
ReuniĂłn padres (primer cuatrimestre 2011/2012)
 

Mehr von Artemisa Yescas Engler

MaestrĂ­a en Ciencias de la ComputaciĂłn - Tec de Mty - Campus Guadalajara
MaestrĂ­a en Ciencias de la ComputaciĂłn - Tec de Mty - Campus GuadalajaraMaestrĂ­a en Ciencias de la ComputaciĂłn - Tec de Mty - Campus Guadalajara
MaestrĂ­a en Ciencias de la ComputaciĂłn - Tec de Mty - Campus GuadalajaraArtemisa Yescas Engler
 
Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...
Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...
Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...Artemisa Yescas Engler
 
Reading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing
Reading Summary - Effective Software Defect Tracking + Pragmatic Unit TestingReading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing
Reading Summary - Effective Software Defect Tracking + Pragmatic Unit TestingArtemisa Yescas Engler
 
Reading Summary - Business Modeling + Peer Code Review + SW Inspections
Reading Summary - Business Modeling + Peer Code Review + SW InspectionsReading Summary - Business Modeling + Peer Code Review + SW Inspections
Reading Summary - Business Modeling + Peer Code Review + SW InspectionsArtemisa Yescas Engler
 
Reading Summary - Software Requirements + Characteristics of Well Written Req...
Reading Summary - Software Requirements + Characteristics of Well Written Req...Reading Summary - Software Requirements + Characteristics of Well Written Req...
Reading Summary - Software Requirements + Characteristics of Well Written Req...Artemisa Yescas Engler
 
Reading Summary - Agile Documentation + Continuous Integration
Reading Summary - Agile Documentation + Continuous IntegrationReading Summary - Agile Documentation + Continuous Integration
Reading Summary - Agile Documentation + Continuous IntegrationArtemisa Yescas Engler
 
Reading Summary - Software Agile Development + Scrum
Reading Summary - Software Agile Development + Scrum Reading Summary - Software Agile Development + Scrum
Reading Summary - Software Agile Development + Scrum Artemisa Yescas Engler
 
Reading Summary - Teamwork + Team Structure + Configuration Management
Reading Summary - Teamwork + Team Structure + Configuration ManagementReading Summary - Teamwork + Team Structure + Configuration Management
Reading Summary - Teamwork + Team Structure + Configuration ManagementArtemisa Yescas Engler
 
Reading Summary - Team Motivation + Software Lifecycles Models
Reading Summary - Team Motivation + Software Lifecycles ModelsReading Summary - Team Motivation + Software Lifecycles Models
Reading Summary - Team Motivation + Software Lifecycles ModelsArtemisa Yescas Engler
 

Mehr von Artemisa Yescas Engler (10)

MaestrĂ­a en Ciencias de la ComputaciĂłn - Tec de Mty - Campus Guadalajara
MaestrĂ­a en Ciencias de la ComputaciĂłn - Tec de Mty - Campus GuadalajaraMaestrĂ­a en Ciencias de la ComputaciĂłn - Tec de Mty - Campus Guadalajara
MaestrĂ­a en Ciencias de la ComputaciĂłn - Tec de Mty - Campus Guadalajara
 
Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...
Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...
Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...
 
Reading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing
Reading Summary - Effective Software Defect Tracking + Pragmatic Unit TestingReading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing
Reading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing
 
Reading Summary - Business Modeling + Peer Code Review + SW Inspections
Reading Summary - Business Modeling + Peer Code Review + SW InspectionsReading Summary - Business Modeling + Peer Code Review + SW Inspections
Reading Summary - Business Modeling + Peer Code Review + SW Inspections
 
Reading Summary - Software Requirements + Characteristics of Well Written Req...
Reading Summary - Software Requirements + Characteristics of Well Written Req...Reading Summary - Software Requirements + Characteristics of Well Written Req...
Reading Summary - Software Requirements + Characteristics of Well Written Req...
 
Reading Summary - Agile Documentation + Continuous Integration
Reading Summary - Agile Documentation + Continuous IntegrationReading Summary - Agile Documentation + Continuous Integration
Reading Summary - Agile Documentation + Continuous Integration
 
Reading Summary - Software Agile Development + Scrum
Reading Summary - Software Agile Development + Scrum Reading Summary - Software Agile Development + Scrum
Reading Summary - Software Agile Development + Scrum
 
Reading Summary - Teamwork + Team Structure + Configuration Management
Reading Summary - Teamwork + Team Structure + Configuration ManagementReading Summary - Teamwork + Team Structure + Configuration Management
Reading Summary - Teamwork + Team Structure + Configuration Management
 
Reading Summary - Team Motivation + Software Lifecycles Models
Reading Summary - Team Motivation + Software Lifecycles ModelsReading Summary - Team Motivation + Software Lifecycles Models
Reading Summary - Team Motivation + Software Lifecycles Models
 
About Node.js
About Node.jsAbout Node.js
About Node.js
 

KĂŒrzlich hochgeladen

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel AraĂșjo
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 

KĂŒrzlich hochgeladen (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 

Reading Summary - Lean Development + Software Modeling UML

  • 1. ************ Lean [POPPENDIECK-2003] Chapter 1, 2 ************************************************** Lean is: “A systematic approach to identifying and eliminating waste through continuous improvement, flowing the product at the pull of the customer in pursuit of perfection.” Lean is centered around preserving value with less work. Lean Software Development is the application of lean principles to the craft of software development. Just-in-time approach. Stop trying to maximize local efficiencies. Practice: Stop-the-Line culture. 1. Preoccupation with failure 2. Reluctance to simplify 3. Sensitivity to operations 4. Commitment to learn from mistakes 5. Deference to expertise The Toyota Product Development System, Four cornerstone elements: 1. System design by an entrepreneurial leader 2. Expert engineering workforce 3. Responsibility based planning and control 4. Self-based concurrent engineering Principles are underlying truths that don’t change over time or space, while practices are the application of principles to a particular situation. The learn-by-doing approach: Adopt a coherent set of practices with confidence that this will eventually lead to understanding of the principles behind them. Then there is an understand-before-doing approach: Understand the underlying principles, and use them to develop practices for specific situations. Software Embedded software is the part of a product that is expected to change. If it didn’t need to change, then it might as well be hardware. Development is the process of transforming ideas into products. Kanban is a method for managing the creation of products with an emphasis on continual delivery while not overburdening the development team. Seven Principles of Lean Software Development 1. Eliminate waste. A common agile development practice is the ‘retrospective’, which is the process of the team meeting after each short iteration to discuss what went well, what didn’t, and what could be done differently in the next iteration. This iterative process of learning and continual improvement is an important part of identifying waste and eliminating it. 2. Build quality in. There are quality assurance processes designed to avoid quality issues in the first place. Examples of this are Pair Programming, Test Driven Development, constant feedback and automation. Myth: The Job of Testing Is to Find Defects
  • 2. 3. Create Knowledge. Things to do to help create knowledge: Pair programming, code reviews, documentation, wiki, commented code, knowledge sharing sessions, training. Myth : Predictions Create Predictability 4. Defer Commitment. Decide as late as possible, particularly for decisions that are irreversible, or at least will be impractical to reverse. Architect the solution so that fewer commitments are irreversible. And defer commitment on irreversible decisions to the latest point possible. Myth: Planning Is Commitment 5. Deliver Fast. An effective organization doesn’t demand teams do more than they are capable of, but instead asks them to self-organize and determine what they can accomplish. Constraining these teams to delivering potentially shippable solutions on a regular basis motivates them to stay focused on continuously adding value. Myth: Haste Makes Waste 6. Respect People. The implication is that you need a lean governance strategy that focuses on motivating and enabling IT teams—not on controlling them. Myth: There Is One Best Way 7. Optimizing the whole. Must look at the bigger picture. Optimize the whole value stream, not just individual functions or teams. Myth: Optimize By Decomposition ************ Software Modeling - UML [FOWLER-2002] Chapter 3, 4, 10 ************************************ A class diagram describes the types of objects in the System and the various kinds of static relationships that exist among them. Class diagrams also show the properties and operations of a Class and the constraints that apply to the way objects are connected. The UML uses the term feature as a general term that covers properties and operations of a Class. Properties represent structural features of a Class. Properties are a single concept, but they appear in two quite distinct notations: attributes and associations. The attribute notation describes a property as a line of text within the class box itself. An association is a solid line between two classes, directed from the source class to the target class. The name of the property goes at the target end of the association, together with its multiplicity. The target end of the association links to the class that is the type of the property. The multiplicity of a property is an indication of how many objects may fill the property. The most common multiplicities you will see are  1 (An order must have exactly one customer.)  0..1 (A corporate customer may or may not have a single sales rep.)  *(A customer need not place an Order and there is no upper limit to the number of Orders a Customer may place-zero or more orders.)
  • 3. A bidirectional association is a pair of properties that are linked together as inverses. Operations are the actions that a class knows to carry out. An operation is something that is invoked on an object-the procedure declaration-whereas a method is the body of a procedure. Typical example of generalization involves the personal and corporate customers of a business. They have differences but also many similarities. The similarities can be placed in a general Customer class (the Supertype), with Personal Customer and Corporate Customer as subtypes. An important principle of using inheritance effectively is substitutability. I should be able to substitute a Corporate Customer within any Code that requires a Customer, and everything should work fine. Notes are comments in the diagrams. Notes can stand on their own, or they can be linked with a dashed line to the elements they are commenting A dependency exists between two elements if changes to the definition of one element (the supplier) may cause changes to the other (the client). Interaction diagrams describe how groups of objects collaborate in some behavior. The most common is the sequence diagram. A sequence diagram captures the behavior of a single scenario. The diagram shows a number of example objects and the messages that are passed between these objects within the use case. Centralized control, one participant does all the processing. Distributed control, processing is split among many participants, each doing a little bit.
  • 4. Both loops and conditionals use interaction frames, which are ways of marking off a piece of a sequence diagram. If a caller sends a synchronous message, it must wait until the message is done, such as invoking a subroutine. If a caller sends an asynchronous message, it can continue processing and doesn't have to wait for a response. You should use sequence diagrams when you want to look at the behavior of several objects within a single use case. Sequence diagrams are good at showing collaborations among the objects; they are not so good at precise definition of the behavior. State machine diagrams are a familiar technique to describe the behavior of a System. In object-oriented approaches, you draw a State machine diagram for a single class to show the lifetime behavior of a single object. States can react to events without transition, using internal activities: putting the event, guard, and activity inside the state box itself. An internal activity is similar to a self- transition: a transition that loops back to the same state. The entry activity is executed whenever you enter a states the exit activity, whenever you leave. However, internal activities do not trigger the entry and exit activities; that is the difference between internal activities and self-transitions.
  • 5. Several states share common transitions and internal activities. In these Gases, you can make them substates and move the shared behavior into a superstate. States can be broken into several orthogonal state diagrams that run concurrently. A state diagram can be implemented in three main ways: nested switch, state patterns and state tables. Stare diagrams are good at describing the behavior of an object across several use cases. Stare diagrams are not very good at describing behavior that involves a number of objects collaborating.