ãœãããŠã§ã¢ã¢ãŒããã¯ãã£ã¯æç¢ºãªã³ãã¥ãã±ãŒã·ã§ã³ã«å€§ããäŸåããŠããŸããããŸããŸãªèŠèŠçããŒã«ã®äžã§ããUMLããã±ãŒãžå³ã¯ã·ã¹ãã ã®çµç¹æ§é ãæåããäžã§éèŠãªéå ·ãšããŠéç«ã£ãŠããŸãããããã®å³ã¯ãç°ãªãã¢ãžã¥ãŒã«ãåå空éããŸãã¯ã³ã³ããŒãã³ããé«ã¬ãã«ã§ã©ã®ããã«çžäºã«é¢ä¿ããŠãããã瀺ããŸããããããå³ãè€éãããããæ§é ãé©åã§ãªããã°ãæç¢ºãã§ã¯ãªãæ··ä¹±ã®åå ã«ãªããŸããããŒã ã¡ã³ããŒãããã±ãŒãžå³ãæ£ããè§£éã§ããã誀解ãçãããªã¹ã¯ãé«ãŸããæè¡çè² åµãèç©ãããŸãã
ãã®ã¬ã€ãã§ã¯ãæéã®çµéãšãšãã«å¯èªæ§ãä¿ã€UMLããã±ãŒãžå³ãäœæããããã®å¿ é æŠç¥ãæ€èšããŸããæ§é çæŽåæ§ãåœåã®äžè²«æ§ãäŸåé¢ä¿ã®ç®¡çãèŠèŠçæŽçã«çŠç¹ãåœãŠãŸãããããã®ååã«åŸãããšã§ãããã¥ã¡ã³ããæ¬æ¥ã®ç®çãæããããšãä¿èšŒããŸããããªãã¡ãéçºãã¬ã€ãããé·æçãªä¿å®ãæ¯æŽããäžæ¹ã§ãé害ç©ã«ãªããªãããã«ããã®ã§ãã

ð·ïž 1. 匷åºãªåœåèŠåã®ç¢ºç«
ä¿å®å¯èœãªå³ã®åºç€ã¯ãããã±ãŒãžã®åœåæ¹æ³ã«ãããŸããååã¯ãã¢ãŒããã¯ãã£ãããã²ãŒãããéçºè ã«ãšã£ãŠäž»ãªèå¥åãšãªããŸããææ§ãŸãã¯äžè²«æ§ã®ãªãåœåã¯ãç¹å®ã®ããžãã¯ãã©ãã«ååšããã®ãããããã¯ã³ã³ããŒãã³ããå®éã«äœãå®è¡ããŠããã®ãã«ã€ããŠã®äžç¢ºå®æ§ãçã¿ãŸããæšæºåãããåœåæŠç¥ã«ãããèªç¥è² è·ã軜æžãããæ°èŠã¡ã³ããŒã®ãªã³ããŒãã£ã³ã°ãå éããŸãã
ð¹ éå±€çãªåœåæ§é
ããã±ãŒãžã¯ã·ã¹ãã ã®è«ççãªéå±€ãåæ ãã¹ãã§ããæ°ååã®ããã±ãŒãžãåãã¬ãã«ã«äžŠã¶ãã©ãããªæ§é ãäœæããã®ã¯é¿ããŸãããã代ããã«ãããžãã¹ãã¡ã€ã³ãæè¡ã¬ã€ã€ãŒãåæ ãããã¹ãæ§é ã䜿çšããŠãã ããã
- ãã¡ã€ã³é§åååœåïŒ ããŒã ãçè§£ã§ããããžãã¹çšèªã䜿çšããŠãã ãããããšãã°ã
è«æ±ãŸãã¯åšåº«ã¯ãã¢ãžã¥ãŒã«_aãŸãã¯ã³ã¢ããžãã¯. - ã¬ã€ã€ãŒå¥åœåïŒ ç°ãªãã¢ãŒããã¯ãã£ã¬ã€ã€ãŒãåºå¥ããŸããæ¥é èŸãæ¥å°ŸèŸã䜿ããšå¹æçã§ããããšãã°ã
ãã¡ã€ã³,ãµãŒãã¹ãããã³ã€ã³ãã©ã¹ãã©ã¯ãã£. - åå空éã®äžè²«æ§ïŒ ããã±ãŒãžåãã³ãŒãããŒã¹ã®åå空éãšäžèŽããŠããããšã確èªããŠãã ãããå³ã«
決æžãšè¡šç€ºãããŠããå Žåãã³ãŒãã¯å¯Ÿå¿ããåå空éå ã«ååšããã®ãçæ³çã§ãã
ð¹ ã±ãŒã¹ããã³ãã©ãŒãããã®åºæº
æžåŒã®çµ±äžã¯èŠèŠçãªãã¡ããã¡ããé²ããã¹ãã£ã³ããããããŸããèŠåãæ±ºãããã¹ãŠã®å³ã§ãããé©çšããŸãããã
- ãã£ã¡ã«ã±ãŒã¹å¯Ÿã¹ããŒã¯ã±ãŒã¹ïŒããã±ãŒãžåã«äžã€ã®ã¹ã¿ã€ã«ãéžãã§ãã ããããã£ã¡ã«ã±ãŒã¹ïŒäŸïŒ
PaymentGatewayïŒã¯ã³ãŒãã§äžè¬çã§ãããã¹ããŒã¯ã±ãŒã¹ïŒäŸïŒpayment_gatewayïŒã¯ãã¡ã€ã«ã·ã¹ãã ã§å¥œãŸããããšãå€ãã§ãããªããžããªã§äœ¿ãããŠããæ¹ãå æããŠãã ããã - é·ãã®å¶çŽïŒååã¯ç°¡æœã«ä¿ã¡ãŸããããé·ãååã¯å³ãæ°Žå¹³æ¹åã«åºããããã¬ã€ã¢ãŠãã®ãã©ã³ã¹ã厩ããŸããæå€§2ã3èªãç®å®ã«ããŸãããã
- ç¥èªãé¿ããïŒãã¹ãŠã®é¢ä¿è
ãæ®éçã«çè§£ããŠããç¥èªã§ãªãéããç¥èªã§ã¯ãªãå®å
šãªèªãæžãããã«ããŸãããã
APIã¯åé¡ãããŸããïŒCRUDçšèªã«éŠŽæã¿ã®ãªãäººãæ··ä¹±ãããå¯èœæ§ããããŸãã
| â æªãç¿æ £ | â è¯ãç¿æ £ | çç± |
|---|---|---|
pkg1 |
user_authentication |
説æçã§æå³ã®ãã |
new_module_v2 |
order_processing |
ããŒãžã§ã³ã«ãããããå®å®ããåå |
com.company.app |
com.company.app.core |
è«ççãªãã¹ãæ§é |
ð 2. äŸåé¢ä¿ãšçµåã®ç®¡ç
ããã±ãŒãžéã®é¢ä¿ã¯æ å ±ãšå¶åŸ¡ã®æµããå®çŸ©ããŸããããã±ãŒãžå³ã§ã¯ããããã¯éåžžäŸåé¢ä¿ã§è¡šãããŸããå¶åŸ¡ãããŠããªãäŸåé¢ä¿ã¯åŒ·ãçµåãåŒãèµ·ãããã·ã¹ãã ãè匱ã§å€æŽãã«ããããŸãããããã®æ¥ç¶ã管çããããšã¯ãå³ãèªã¿ãããä¿ã€äžã§äžå¿çãªåœ¹å²ãæãããŸãã
ð¹ äŸåé¢ä¿ã®æ¹åæ§
äŸåé¢ä¿ã¯äžè¬çã«ãé«ã¬ãã«ã®æœè±¡ããäœã¬ãã«ã®å®è£ ãžãšæµããŸãããã®ååã¯ãã°ãã°äŸåé¢ä¿ã®é転ååãšåŒã°ããŠãããã³ã¢ããžãã¯ãç¹å®ã®è©³çްããéé¢ããç¶æ ã«ä¿ã¡ãŸãã
- ç¢å°ã®åãïŒ ç¢å°ã®å 端ã¯äŸåé¢ä¿ãæããŸããããã±ãŒãžAãããã±ãŒãžBã䜿çšããå Žåãç¢å°ã¯AããBãžåãããŸãã
- å¶åŸ¡ãããŒïŒ åç°äŸåãé¿ããŠãã ãããããã±ãŒãžAãBã«äŸåããBãAã«äŸåããå Žåãå³ã¯çè§£ãã«ããã«ãŒãã«ãªããŸããã€ã³ã¿ãŒãã§ãŒã¹ãŸãã¯äžéããã±ãŒãžãå°å ¥ããããšã§ããããã®ã«ãŒããè§£é€ããŠãã ããã
- ã€ã³ããŒã vs. 䜿çšïŒ åå®çŸ©ã®ããã«å³å¯ã«ã€ã³ããŒããããããã±ãŒãžãšãå®è¡æããžãã¯ã®ããã«åŒã³åºãããããã±ãŒãžãåºå¥ããŠãã ããããããã®é¢ä¿ãã©ãã«ä»ããããã«ã¹ã¿ereotypeã䜿çšããŠãã ããã
ð¹ èŠèŠçãã€ãºã®äœæž
ããã±ãŒãžãã€ãªãç·ãå€ããããšããã¹ãã²ããã£å¹æããçããŸããããã«ããå®éã®ã¢ãŒããã¯ãã£ãèŠãã«ãããªããŸãããããç·©åããã«ã¯ïŒ
- é¢é£ããäŸåé¢ä¿ãã°ã«ãŒãåïŒ ããã±ãŒãžAå ã®è€æ°ã®ã¯ã©ã¹ãããã±ãŒãžBå ã®è€æ°ã®ã¯ã©ã¹ã«äŸåããå Žåãåã ã®ã¯ã©ã¹éã®æ¥ç¶ã«ç·ãåŒãã®ã§ã¯ãªããããã±ãŒãžã¬ãã«ã§äŸåé¢ä¿ã衚çŸããŠãã ããã
- ã€ã³ã¿ãŒãã§ãŒã¹ã®å©çšïŒ ãããã¡ãšããŠæ©èœããã€ã³ã¿ãŒãã§ãŒã¹ããã±ãŒãžãå°å ¥ããŠãã ãããä»ã®ããã±ãŒãžã¯å®è£ ããã±ãŒãžã§ã¯ãªããã€ã³ã¿ãŒãã§ãŒã¹ã«äŸåããŸãã
- ãã¡ã³ã¢ãŠãã®å¶éïŒ ããã±ãŒãžã¯ä»ã®ããã±ãŒãžã«äŸåããããŠã¯ãããŸããããããããªã£ãŠããå Žåãããžãã¯ãããå°ããªäžè²«æ§ã®ããåäœã«åæ§æããããšãæ€èšããŠãã ããã
| äŸåé¢ä¿ã®çš®é¡ | èŠèŠçè¡šçŸ | ä¿å®æ§ãžã®åœ±é¿ |
|---|---|---|
| çŽæ¥å®è£ | æšæºã®ãªãŒãã³ç¢å° | é«ãªã¹ã¯ïŒå€æŽãæ¥éã«æ³¢åãã |
| ã€ã³ã¿ãŒãã§ãŒã¹å¥çŽ | ãªãŒãã³ç¢å° + ã<<use>>ã | äœãªã¹ã¯ïŒå®è£ ã亀æå¯èœ |
| åç° | ã«ãŒãããç¢å° | æ·±å»ïŒè«çã®è§£æ±ºãå°é£ |
ðš 3. èŠèŠçæŽçãšã¬ã€ã¢ãŠã
åœåãäŸåé¢ä¿ç®¡çãå®ç§ã§ãã£ãŠããèŠèŠçã¬ã€ã¢ãŠããæ··ä¹±ããŠãããšå³ã¯å€±æããŸããèªè ã®ç®ãã·ã¹ãã ã®æ§é ã«èªç¶ã«å°ãããšãç®çã§ãããã®ããã«ã¯æå³çãªäœçœãæŽåãã°ã«ãŒãåãå¿ èŠã§ãã
ð¹ 空éçã°ã«ãŒãå
é¢é£ããããã±ãŒãžãèŠèŠçã«ã°ã«ãŒãåãããUMLã¯æç€ºçãªã°ã«ãŒãåæ§é ïŒãã¬ãŒã ãªã©ïŒãèš±å¯ããŠããããããã±ãŒãžå³ã§ã¯åçŽãªç©ºéçè¿æ¥æ§ããã°ãã°ååã§ããã
- æ©èœã¯ã©ã¹ã¿ãŒïŒæ±ºæžé¢é£ã®ãã¹ãŠã®ããã±ãŒãžãäºãã«è¿ãã«é 眮ããããã¹ãŠã®ãã°ãŠãŒãã£ãªãã£ãæç¢ºãªã¯ã©ã¹ã¿ãŒã«é 眮ããã
- è«ççãŸãŒã³ïŒç¡èŠå¯èœãªå¢çç·ãäœçœã䜿ã£ãŠé¢å¿äºé ãåé¢ãããããšãã°ããŠãŒã¶ãŒã€ã³ã¿ãŒãã§ãŒã¹ã®ããã±ãŒãžãäžæ¹ã®åŽã«ãããŒã¿ããŒã¹ã®ããã±ãŒãžãããäžæ¹ã®åŽã«é 眮ããã
- èªã¿é ïŒããŒã¿ãå¶åŸ¡ã®æµããèªç¶ãªèªã¿é ïŒéåžžã¯äžããäžããŸãã¯å·Šããå³ïŒã«åŸãããã«å³ãé 眮ããã
ð¹ æ··éã®åé¿
å³äžã®ãã¹ãŠã®èŠçŽ ã¯ç®çãæããªããã°ãªããªããé«ã¬ãã«ã®çè§£ã«è²¢ç®ããªãäžèŠãªè©³çްã¯åé€ããã
- å éšè©³çްã®é衚瀺ïŒå éšæ§é ãçŠç¹ã§ãªãéããããã±ãŒãžå ã®ãã¹ãŠã®ã¯ã©ã¹ãå³ã«åæããŠã¯ãªããªããããã±ãŒãžã®å¢çã衚ãããã«ããã±ãŒãžç©åœ¢ã䜿çšããã
- æå°éã®ã©ãã«ïŒé¢ä¿ãæšæºçã§ãªãå ŽåïŒããšãã°ç¹å®ã®ç¶æ¿ããã€ã³ãã£ã³ã°ã®çš®é¡ïŒãé€ããäŸåé¢ä¿ã®ç·ã«ããã¹ãã远å ããªãã
- äžè²«ããééïŒããã±ãŒãžéã®äœçœãåçã«ç¢ºä¿ãããäžåäžãªééã¯ãããã§ãã·ã§ãã«ã§ãªããã¹ãã£ã³ãã«ãããªãã
ð 4. ããã¥ã¡ã³ãåãšæ³šé
å³ã¯èŠèŠçãªèŠçŽã§ãããããã¹ãŠã®ãã¥ã¢ã³ã¹ãæããããšã¯ã§ããªããæ³šéãã¹ã¿ereotypeã¯èŠèŠç©ºéãä¹±ããã«å¿ èŠãªæèãæäŸããããããã¯æ§é ã®èåŸã«ããããªããã説æããã
ð¹ ã¹ã¿ereotypeã®äœ¿çš
ã¹ã¿ereotypeã«ãããæšæºçãªUML衚èšãç¬èªã®ãã¡ã€ã³ã«åãããŠæ¡åŒµã§ããããããã¯ããã±ãŒãžãé¢ä¿ã«æå³çãªæ å ±ã远å ããã
- æšæºçãªã¹ã¿ereotypeã®å®çŸ©ïŒããŒã ã䜿çšããã¹ã¿ereotypeã®ã»ãããåæãããäžè¬çãªäŸã«ã¯
<<core>>,<<external>>ããŸãã¯<<test>>. - äžè²«ãã䜿çšïŒä»¥äžã®ç¹ã確èªããïŒ
<<interface>>ã¯ãã¹ãŠã®å³ã§äžè²«ããŠäœ¿çšãããŸããæ··åšããªãã§ãã ããã<<api>>ããã³<<interface>>åãæŠå¿µã«å¯ŸããŠäœ¿çšããŠãã ããã
ð¹ ã¢ãããŒã·ã§ã³ãšããŒã
è€éãªå¶çŽãããã±ãŒãžã«é©çšãããç¹å®ã®ã«ãŒã«ã説æããããã«ãããŒãã䜿çšããŠãã ããã
- ç¯å²ã®æç¢ºæ§ïŒ ããŒãã¯ãé©çšãããç¹å®ã®ããã±ãŒãžã«ä»ããããšãå³ã®çãäžãæŒãããã®ã¯é¿ããŠãã ããã
- å¶çŽã«ãŒã«ïŒ ããã±ãŒãžãå¥ã®ããã±ãŒãžã«äŸåã§ããªãå Žåã¯ãããŒãã«ãã®æšãèšèŒããŠãã ãããããã«ãããéçºè ãçŠæ¢ãããäŸåé¢ä¿ãäœæããã®ãé²ããŸãã
- ããŒãžã§ã³æ å ±ïŒ å³ãã¢ãŒããã¯ãã£ã®ç¹å®ã®ããŒãžã§ã³ã衚ããŠããå Žåã¯ãããããŒãŸãã¯ããã¿ãŒã«ããŒãžã§ã³ããŒããå«ããŠãã ããã
ð 5. ã¡ã³ããã³ã¹ãšããŒãžã§ã³ç®¡ç
ãœãããŠã§ã¢ã¯é²åãããèŠä»¶ã¯å€åããã³ãŒãã¯åæ§æãããã仿¥æ£ç¢ºãªå³ã§ãã£ãŠããã¡ã³ããã³ã¹ãããªããã°ææ¥ã«ã¯é³è åãããå³ãäžåéãã®ææç©ã§ã¯ãªããåçãªããã¥ã¡ã³ããšããŠæ±ãã¹ãã§ããã
ð¹ ã³ãŒããšã®åæ
UMLããã±ãŒãžå³ã«ãããŠæãéèŠãªã«ãŒã«ã¯æ£ç¢ºæ§ã§ãããã³ãŒãã倿ŽãããŠãå³ãæŽæ°ãããªããã°ãå³ã®äŸ¡å€ã¯å®å šã«å€±ãããã
- æŽæ°ã®ããªã¬ãŒïŒ å³ã®æŽæ°ã«æç¢ºãªããªã¬ãŒãå®çŸ©ãããå€§èŠæš¡ãªåæ§æãæ°ããã¢ãžã¥ãŒã«ããŸãã¯ã¢ãŒããã¯ãã£ã®å€æŽã¯ãæŽæ°ã矩åä»ããã¹ãã§ããã
- èªåçæïŒ å¯èœãªéããã³ãŒããã¡ã¿ããŒã¿ããå³ãçæã§ããããŒã«ã䜿çšããŠãåæã確ä¿ããã
- ã¬ãã¥ãŒéçšïŒ éèŠãªæ©èœã®å®äºå®çŸ©ã«ãå³ã®æŽæ°ãå«ãããã¬ãã¥ã¢ãŒãæ°ããã³ãŒããšå³ãç §åããããšã確èªããã
ð¹ å³ã®ããŒãžã§ã³ç®¡ç
ã³ãŒããšåæ§ã«ãå³ã¯ããŒãžã§ã³ç®¡çã·ã¹ãã ã«æ ŒçŽãã¹ãã§ãããããã«ãããããŒã ã¯å€æŽãæéã®çµéãšãšãã«è¿œè·¡ã§ãã倿Žãæªåœ±é¿ãåãŒããå Žåã¯å ã«æ»ããã
- ã³ãããã¡ãã»ãŒãžïŒ å³ãæŽæ°ããéã¯ããå³ãæŽæ°ããšã ãæžãã®ã§ã¯ãªããæ§é çãªå€æŽã説æããã³ãããã¡ãã»ãŒãžãæžãããšã
- å·®ååæïŒ ããŒãžã§ã³éã®å·®ç°ãã¬ãã¥ãŒããã¢ãŒããã¯ãã£ãã©ã®ããã«é²åããããçè§£ããã
â ïž 6. é¿ããã¹ãäžè¬çãªèœãšã穎
çµéšè±å¯ãªã¢ãŒããã¯ãã§ãããå³ã®å質ãäœäžãããçœ ã«ã¯ãŸã£ãŠããŸãããšããããŸããããããäžè¬çãªèœãšãç©Žã«æ°ã¥ããŠããããšã§ãäºåã«åé¿ããããšãã§ããããã«ãªããŸãã
- éå°èšèšïŒå³ãå®ç§ã«èŠããããã«ããããšã«æ³šåããæ©èœæ§ã軜èŠãããæ§é ãäŒããããšãã§ããç²ãã¹ã±ããã®ã»ãããæŽç·ŽãããŠããŠãæ··ä¹±ãæãå³ãããåªããŠããŸãã
- æœè±¡åºŠã®æ··åïŒããã±ãŒãžå³ã«ã¯ã©ã¹ã¬ãã«ã®è©³çްã衚瀺ããªãã§ãã ãããããã±ãŒãžã®å¢çã«æ³šç®ããŠãã ããã
- åŠå®çäŸåé¢ä¿ãç¡èŠããïŒ ãšãã«ã¯ãäŸåé¢ä¿ãååšããªãããšã®æ¹ããååšããããšãããéèŠã§ããäœãæ¥ç¶ããŠã¯ãããªãããææžåããŠãã ãããæ¥ç¶ããŠã¯ãããªãæ¥ç¶ããŠã¯ãããªãã
- éçæèïŒå³ãåºå®ãããååšãšããŠèšèšããã®ã§ã¯ãªããé²åãç¶ããå°å³ãšããŠæããã¹ãã§ããã¢ãŒããã¯ãã£ã¯åçã§ãããããå³ããã®çŸå®ãåæ ãã¹ãã§ãã
ð¡ïž 7. èŠãããã®ãã§ãã¯ãªã¹ã
UMLããã±ãŒãžå³ãæçµç¢ºå®ããåã«ããã®ãã§ãã¯ãªã¹ãã確èªããŠãä¿å®æ§ã®åºæºãæºãããŠãããã確èªããŠãã ããã
- âïž ãã¹ãŠã®ããã±ãŒãžåã¯èª¬æçã§äžè²«æ§ããããŸããïŒ
- âïž åç°äŸåé¢ä¿ã¯ãããŸããïŒ
- âïž ã¬ã€ã¢ãŠãã¯è«ççã§ã远ããããã®ã容æã§ããïŒ
- âïž ã¹ãã¬ãªã¿ã€ãã¯äžè²«ããŠäœ¿çšãããŠããŸããïŒ
- âïž å³ã¯çŸåšã®ã³ãŒãããŒã¹ãšåæããŠããŸããïŒ
- âïž äžèŠãªè©³çްãèŠèªãä¹±ããŠããŸããïŒ
- âïž ã¢ãããŒã·ã§ã³ã¯æç¢ºã§å ·äœçã§ããïŒ
- âïž ãã¡ã€ã«ã¯ããŒãžã§ã³ç®¡çã«ä¿åãããŠããŸããïŒ
ð ã¢ãŒããã¯ãã£ã®å®å®æ§ã«é¢ããçµè«
èªã¿ãããUMLããã±ãŒãžå³ãç¶æããããšã¯ããœãããŠã§ã¢ãããžã§ã¯ãã®æç¶å¯èœæ§ãžã®æè³ã§ããåœåã®å³æ ŒããäŸåé¢ä¿ã®äžå¯§ãªç®¡çãããã¥ã¡ã³ãã®ææ°åãžã®ã³ãããã¡ã³ããæ±ããããŸããæ£ããè¡ãããã°ããããã®å³ã¯éçºãå°å ¥æã®æ©æŠã軜æžããä¿¡é Œã§ããåç §è³æã«ãªããŸãã責任ã®å¢çãæç¢ºã«ããã·ã¹ãã ãæé·ããŠããã®æ§é ãçè§£ãããããªãããšãä¿èšŒããŸãã
äžèšã§è¿°ã¹ãå®è·µãå®ãããšã§ãããŒã ã劚ããã®ã§ã¯ãªãæ¯æŽããèŠèŠçèšèªãæ§ç¯ã§ããŸããæç¢ºããäžè²«æ§ãæ£ç¢ºæ§ã«æ³šåããŠãã ããããããã®ååã¯å¹æçãªãœãããŠã§ã¢ããã¥ã¡ã³ãã®åºç€ãæããçŽæ¥çã«å¥å šã§ä¿å®æ§ã®é«ãã³ãŒãããŒã¹ã®æ§ç¯ã«è²¢ç®ããŸãã







