Skip to main content

Home/ SoftwareEngineering/ Group items tagged MartinFowler

Rss Feed Group items tagged

kuni katsuya

AnemicDomainModel - 0 views

  • AnemicDomainModel
  • Eric Evans
  • basic symptom of an Anemic Domain Model
  • ...40 more annotations...
  • The catch comes when you look at the
  • behavior
  • there is hardly any behavior on these objects, making them little more than bags of getters and setters
  • I was chatting with
    • kuni katsuya
       
      note, the 'i' here, is mr. MARTIN FOWLER!! and of course, eric evans hails from domain driven design fame
  • fundamental horror
  • it's so contrary to the basic idea of object-oriented design
  • combine
  • data and process together
  • procedural style design
  • completely miss the point of what object-oriented design is all about
  • It's also worth emphasizing that putting behavior into the domain objects
  • should not contradict the solid approach of using layering to separate domain logic from such things as persistence and presentation responsibilities
  • logic that should be in a domain object is domain logic
  • validations
  • calculations
  • business rules
  • One source of confusion in all this is that many OO experts do recommend putting a layer of procedural services on top of a domain model, to form a Service Layer
  • this isn't an argument to make the domain model
  • void of behavior
  • service layer advocates use a service layer in conjunction with a behaviorally rich domain model.
  • does not contain business rules or knowledge, but
  • only coordinates
  • tasks and delegates work to
  • collaborations of domain objects
  • in the next layer down
  • can have state that reflects the
  • progress of a task
  • for the user or the program
  • Domain Layer
  • Application Layer
  • Service Layer
  • Responsible for
  • representing concepts of the business
  • business rules
  • This layer is the heart of business software
    • kuni katsuya
       
      ... and has the *most value* to an organization investing in writing their own software infrastructure software (eg. user interface, orm, application server-related frameworks) or plumbing code should be treated as commodities where possible, unless, the business consciously decides that a custom, home-grown implementation is absolutely required for patenting or other differentiation reasons and/or that no existing off-the-shelf solution can be used but these cases should be rare! do not blindly fall for the not-invented-here syndrome
  • all the key logic lies in the domain layer
  • I don't know why this anti-pattern is so common
  • if they come from a
  • data background
    • kuni katsuya
       
      this is why during every sprint, i reiterate that the data model up approach to designing the system is OH SO WRONG but nobody listens
  • J2EE's Entity Beans
    • kuni katsuya
       
      damn baggage from  eons ago!!!
kuni katsuya

Technical debt; is it only technical? | Xebia Blog - 0 views

  • Technical debt; is it only technical?
  • “TechnicalDebtQuadrant“
  • distinguishes between reckless vs. rational behavior and  deliberate vs. carelessly/naively choices
  • ...10 more annotations...
  • not only code related
  • Code form
  • Architectural form
  • Testing form
  • Deployment form
  • Documentation form
  • Functional form
  • Project form
  • Organizational form
  • Whether technical dept is categorized as deliberate, inadvertent, reckless or careful, it is good to be aware of this and see how you want to cope with it strategically.
kuni katsuya

It's Not Just Standing Up: Patterns for Daily Standup Meetings - 0 views

  • stand-up meeting should
  • give energy
  • not take it
  • ...11 more annotations...
  • The purpose is not to meet... it is to improve.
  • Some people are talkative and tend to wander off into Story Telling
  • Some people want to engage in Problem Solving immediately
  • Other topics of discussion (e.g., design discussions, gossip, etc.) should be deferred until after the meeting.
  • questions should be reversed in order to emphasise the correct order of importance:
  • Any impediments in your way? What are you working on today? What have you finished since yesterday?
  • Fifteen Minutes or Less
  • A long, droning meeting is a
  • horrible, energy-draining way
  • to start the day
  • Signal the End
  •  
    "stand-up meeting should"
kuni katsuya

CQRS - 0 views

1 - 8 of 8
Showing 20 items per page