Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Problems and countermeasures in executing mobile architecture.

Problems and countermeasures in executing mobile architecture.

Tatsuya Kikuchi

October 04, 2019
Tweet

More Decks by Tatsuya Kikuchi

Other Decks in Programming

Transcript

  1. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROFILE Name :

    Tatsuya Kikuchi SNS : @tatsuyak9 (github,note,instagram) Role : iOSɺUnity, Developer, TechnicalLead Other : AR, VR, Android, PHP, Machine Learning, Touch Designer, IoT(Arduino)
  2. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE Have you ever

    encountered problems using architecture in your project?
  3. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE I would like

    to share the examples of my projects and their countermeasures.
  4. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE ABOUT MOBILE ARCHITECTURE

    ▸ MVC ▸ MVVM ▸ Clean Architecture ▸ VIPER ▸ Flux ▸ Redux etc. Model View ViewModel Retrieved from https://ja.wikipedia.org/wiki/Model_View_ViewModel The Clean Architecture Retrieved from https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html
  5. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE WHAT IS THE

    PURPOSE OF AN ARCHITECTURE? ▸ Easy to respond to specification changes. ▸ Increased productivity due to reusable design. ▸ Have common awareness within the team. ▸ Improved readability. ▸ Make test code easier to write.
  6. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS ▸ Development

    not fit for architecture. ▸ There was a problem with the architecture in use. ▸ Difficult to set the role according to the architecture. ▸ There is no architecture. exception
  7. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS ▸ Development

    not fit for architecture. View ViewModel Model API, DB Access etc..
  8. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS ▸ Development

    not fit for architecture. View Model API, DB Access etc.. Anti pattern
  9. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS ▸ Development

    not fit for architecture. Difficult to maintain View ViewModel Model
  10. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS ▸ Development

    not fit for architecture. Generate the same source code Class function
  11. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS ▸ Development

    not fit for architecture. Generate the same source code Class function Anti pattern copy
  12. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS ▸ Development

    not fit for architecture. Degrade occurs when updating App Ver.1.0
  13. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS ▸ Development

    not fit for architecture. Degrade occurs when updating App Ver.1.0
  14. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS App Ver.1.0

    ▸ Development not fit for architecture. Degrade occurs when updating
  15. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS App Ver.1.0

    App Ver.1.1 ▸ Development not fit for architecture. Degrade occurs when updating
  16. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS App Ver.1.0

    App Ver.1.1 ▸ Development not fit for architecture. Degrade occurs when updating
  17. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS Bidirectional access

    is possible Class function ▸ Development not fit for architecture. Anti pattern
  18. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS ▸ Difficult

    to set the role according to the architecture. View ViewModel Model Class Which one? MVVM Example
  19. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS ▸ There

    was a problem with the architecture in use. MVVM Example View ViewModel Model
  20. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE PROBLEMS ▸ There

    was a problem with the architecture in use. MVVM Example View ViewModel Model fat ViewModel
  21. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE COUNTERMEASURE ▸ Development

    not fit for architecture. Insufficient understanding of architecture.
  22. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE COUNTERMEASURE ▸ Development

    not fit for architecture. Insufficient understanding of architecture. ɾCreate a document. and check PullRequest. ɾIf possible, check with CI. Class Diagram Sequence Diagram Tool ɾPlantUML ɾmermaid.js ɾdraw.io ɾCacoo etc
  23. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE COUNTERMEASURE ▸ Difficult

    to set the role according to the architecture. ▸ There was a problem with the architecture in use.
  24. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE COUNTERMEASURE ▸ Difficult

    to set the role according to the architecture. Change according to schedule Architecture extension ɾExample MVVM → MVVM + Mediator Reduce man-hours Architecture changes ɾExample MVVM → Clean Architecture For multi-platform support(iOS,tvOS,MacOS)
  25. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE COUNTERMEASURE ▸ Difficult

    to set the role according to the architecture. Change according to schedule Architecture extension Architecture changes ▸ There was a problem with the architecture in use. Difficult to set the role according to the architecture. A specific class became fat.
  26. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE COUNTERMEASURE ▸ Difficult

    to set the role according to the architecture. Change according to schedule Architecture extension Architecture changes ▸ There was a problem with the architecture in use. Difficult to set the role according to the architecture. A specific class became fat.
  27. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE COUNTERMEASURE ▸ Difficult

    to set the role according to the architecture. Change according to schedule Architecture extension Architecture changes ▸ There was a problem with the architecture in use. Difficult to set the role according to the architecture. A specific class became fat. Should consider architecture. There is no architecture. exception
  28. PROBLEMS AND COUNTERMEASURES IN EXECUTING MOBILE ARCHITECTURE OVERALL SUMMARY ▸

    It is not essential to design the architecture. However, risk can be reduced by designing and matching implementation. ▸ If the architecture does not work well, there is a problem with the information sharing process.