y §y ¹ ¿ Ê |ÀÆ» Ãz´ Ëz» mce.sharif.edu/courses/91-92/1/ce404-1/resources/root...̸ve...
TRANSCRIPT
ÃZ´�ËZ»�M�ÉZÅ�dÌ·Z §���������ZÌ¿�Ê�|ÀÆ»�¶»Z���Y�§Y�¹�¿�Ê�|ÀÆ»�ʸ�Y�Ã�Âu�lÀa��{�ÃZ´�ËZ»�M��Z¯�����,¶Ì¸ve�,ZÅ�É|À»
�����{�Ë~a�Ê»��¹Zn¿Y�½Â»�M�Á�É�Z��Ã{ZÌa�,ÊuY�������ÉZÅ�ÃÁ�³�Ä]��Ô¯���ZË������{Â�Ì»�ºÌ�¬e�Ã�¨¿������ÃÁ�³��Å�ÉY�]�Ã�Á�a�®Ë�[Zzf¿Y
�´Ë{�ÉZÅ�ÃÁ�³��Z¯�É{�§�Ê]ZË��Y����Ĭ̫{�{Ây�s����Y��Z§{�Á�ZÅ�ÃÁ�³�Ã|��¹Zn¿Y��Z¯�ÄWY�Y����¼n»��{��Ĭ̫{���Y�]Y�Á�ºÌÅZ¨»�ÄWY�Y�Ä�¸m�½M��Â�»�Ä]��Â]�»����ZÅ�ÃÁ�³���Âe����Ĭ̫{��Ô¯��{�ÊÅÁ�³��Z¯�¹Zn¿Y����{Ây�ʸ^«�ÉZÅ�Z¯�Á�ZÅ�µ|»�sÔ�Y�Á�ÊÀÌ]�Z]�,�Á�»����Ĭ̫{���ÃZ´�ËZ»�M��{�ÊÅÁ�³��Z¯�lËZf¿�Á�Ã|��sÔ�Y�ÉZÅ�µ|»��Ë¿��Ìa�ÄWY�Y�Ä]TA
�Ä]�½M�µZ��Y�Á�ZÅ�ÃÁ�³���Âe�| ]�Äf¨Å�Ze�ÃZ´�ËZ»�M��Z¯���Y�³�ÄÌÆe�Ô¯�ÉZ��Y �Ô¯��{�½{�ÁM
ÃZ´�ËZ»�M�ÉZÅ�dÌ·Z §�ZÅ�É|À»�ZÌ¿�Ê�|ÀÆ»
�������,ºf�Ì��ÄÀÌ»��ÊËZ�ZÀ��,ZÅ�É|À»�ZÌ¿�É�ÁM��¼md¼�«�,�¶Ì¸ve�d¼�«�,¶Ì¸ve��É�Z¼ »É�Z¼ »�Ê]ZË��YÊuY��É�]�Z¯���YÁ�ÊuY���Á�É�Z��Ã{ZÌaRefactoring
½Â»�M
��{��Z^yY��Y��Ô�YdËZ��[Á��http://ce.sharif.edu/courses/91-92/1/ce404-1/index.php
µÂX�»����|�Z�»�É�ËÁ�a�Z��̸���[email protected]�
Ã�¼¿�¹�Z]�ÄWY�Y����
����ÊeZ»|¬»�ºÌÅZ¨»����{Za�,ZÅ|f»�,ZÅ�Y�]Y� Êf�YÂy�{�{�Y»�\�u��]�¹�Ó�ÉZÅ�µ|»�Á�ZÅ´·Y�����{Za�,ZÅ|f»�,ZÅ�Y�]Y� �Á�ÊËZÅ�µ|»�,ZÅ´·Y�����|¿Y�Ã|�¿�Äf¨³�Ô^«�į������ʧZ�Y�Ã�¼¿�
µ|»Zf»µZ»�§���������
��´Ë{�ÉZÅ�ÃÁ�³��Z¯�Ê]ZË��Y�����ÊËZÆ¿�Ã�Á�a������j¯Y|u��Ô¯��{��ÌyZe���ÌyZe��Z]��Å�Á�|�Z]�Ê»�µÂ^¬»��Ĭ̫{��� �{�Y{�ʨÀ»�Ã�¼¿��|�Z]�Ê»��Zn»�Äf¨Å��{��Z^°Ë��j¯Y|u��Ô¯��{�d^Ì£���d^Ì£�¹|�� �{�Y{�d^j»���
����� ������� �������� ��¶¯�Ã�¼¿
�ZÅ�É|À»�ZÌ¿�Ê�|ÀÆ»ϪϨϴϣί�ˬΎϬϳΪϨϣίΎϴϧ�ωϮϧ�ϞΜϣ�ϤϴϫΎϔϣ��Ϫέ�context�ϪϨϣΩ�ˬ��domain���ϢϴϫΎϔϣ�ϭ
ΎϬϳΪϨϣίΎϴϧ�ϪϠΣήϣ�ϪΑ�ςΒΗήϣ��
�ςΒΗήϣ�ΕΎϋϼσ�έϭ�ϊϤΟ�ϭ�ΎϬϳΪϨϣίΎϴϧ�ϳΎγΎϨη��ϩϮΤϧ
ϪϨϣΩ�ϭ�ϪϨϴϣί�ϳΎγΎϨη��ϩϮΤϧ
ϪϨϴϣί�ϭ�ΎϬϳΪϨϣίΎϴϧ�ίΎγ�ϝΪϣ��ϩϮΤϧ
�ί�ϩΩΎϔΘγusecaseΕΎϴΰΟ�ϩήϤϫ�ϪΑ�ΎϬϳΪϨϣίΎϴϧ�ίΎδϟΪϣ�ήΑ�
�ϡήΎϳΩ�Ϥ�ΎΑ�ϪϠΌδϣ�ϞϴϠΤΗ�ϭ�ϒθIshikawa(Fish-bone)
��ΎϫέΰΑ�ϭ�ΎϫϮϟΩΎ�ϭ�ΎϫϮϟ�γέήΑ
ϪΟϮΗ�ϞϣΎ��ϩήϤϧ�ΖϓΎϳέΩ�ήΑ�Ύϣ�ΩΩή�υΎΤϟ�εέΰ�έΩ�ΪϳΎΑ�έϮάϣ�ΩέϮϣ��ϓΎ�ΩΩή�ϪϓΎο�ΰϴϧ�ήϳΩ�ΐϟΎτϣ�Ζγ�ϡίϻ�ϭ�ΪηΎΑ�Ϥϧ���ΕέϮλ�ϪΑ�ΐϟΎτϣ�ΪϳΎΑ�ϦϴϨϤϫ
���ϩϭή�ΎϬϳΪϨϣίΎϴϧ�ίΎγ�ϝΪϣ�ϭ�ΐδ��ϩϮΤϧ�είϮϣ�έϮψϨϣ�ϪΑ�ϭ�ϪΘγϮϴ�ϢϴψϨΗΩΩή��
¶Ì¸ve��ϞϴϠΤΗ�ΗΎϣΪϘϣ�ϢϴϫΎϔϣ��Ϫέ
����έΰϓ�ϡήϧ��ϪόγϮΗ�ΪϨϳήϓ�έΩ�ϞϴϠΤΗ��ϩΩϭΪΤϣ�ϭ�ϩΎϳΎΟ�γέήΑ
���ϞϴϠΤΗ��ϩϮΤϧ�ϭ�ΎϬϧ�ϳϭ�ˬϞϴϠΤΗ�Ύϫ�αϼ
�Ύϫ�αϼ�ϦϴΑ�ςΑϭέ�γέήΑ
ϪΟϮΗ�������ϩήϤϧ�ΖϓΎϳέΩ�ήΑ�Ύϣ�ΩΩή�υΎΤϟ�εέΰ�έΩ�ΪϳΎΑ�έϮάϣ�ΩέϮϣ�
�ΩΩή�ϪϓΎο�ΰϴϧ�ήϳΩ�ΐϟΎτϣ�Ζγ�ϡίϻ�ϭ�ΪηΎΑ�Ϥϧ�ϓΎ�ϞϣΎ���
��ΐδ��ϩϮΤϧ�είϮϣ�έϮψϨϣ�ϪΑ�ϭ�ϪΘγϮϴ�ΕέϮλ�ϪΑ�ΐϟΎτϣ�ΪϳΎΑ�ϦϴϨϤϫ
��ΩΩή�ϢϴψϨΗ�ϩϭή�ΎϬϳΪϨϣίΎϴϧ�ίΎγ�ϝΪϣ�ϭ�
¶Ì¸ve�ϪΘδΑ�ϞϴϠΤΗ��package��
ΖϴϟΎόϓ�έΩϮϤϧ�γέήΑ
Usecase realization
�ΎϫέΰΑ�ϭ�ΎϫϮϟΩΎ�ϭ�ΎϫϮϟ�γέήΑ
ϪΟϮΗ�������ϩήϤϧ�ΖϓΎϳέΩ�ήΑ�Ύϣ�ΩΩή�υΎΤϟ�εέΰ�έΩ�ΪϳΎΑ�έϮάϣ�ΩέϮϣ�
�ΩΩή�ϪϓΎο�ΰϴϧ�ήϳΩ�ΐϟΎτϣ�Ζγ�ϡίϻ�ϭ�ΪηΎΑ�Ϥϧ�ϓΎ�ϞϣΎ���
��ΐδ��ϩϮΤϧ�είϮϣ�έϮψϨϣ�ϪΑ�ϭ�ϪΘγϮϴ�ΕέϮλ�ϪΑ�ΐϟΎτϣ�ΪϳΎΑ�ϦϴϨϤϫ
��ΩΩή�ϢϴψϨΗ�ϩϭή�ΎϬϳΪϨϣίΎϴϧ�ίΎγ�ϝΪϣ�ϭ�
έΎϤόϣ
έΎϤόϣ�ϡϮϬϔϣ�γέήΑ
έΎϤόϣ�ΩΎόΑ�γέήΑ
��� έΎϤόϣ�ίΎδϟΪϣ�Ύϫ�εϭέ�ϭ�ΎϫέΰΑ�γέήΑ
�ΎϫέΰΑ�ϭ�ΎϫϮϟΩΎ�ϭ�ΎϫϮϟ�γέήΑ
ϪΟϮΗ�������ϩήϤϧ�ΖϓΎϳέΩ�ήΑ�Ύϣ�ΩΩή�υΎΤϟ�εέΰ�έΩ�ΪϳΎΑ�έϮάϣ�ΩέϮϣ�
�ΩΩή�ϪϓΎο�ΰϴϧ�ήϳΩ�ΐϟΎτϣ�Ζγ�ϡίϻ�ϭ�ΪηΎΑ�Ϥϧ�ϓΎ�ϞϣΎ���
��ΐδ��ϩϮΤϧ�είϮϣ�έϮψϨϣ�ϪΑ�ϭ�ϪΘγϮϴ�ΕέϮλ�ϪΑ�ΐϟΎτϣ�ΪϳΎΑ�ϦϴϨϤϫ
��ΩΩή�ϢϴψϨΗ�ϩϭή�ΎϬϳΪϨϣίΎϴϧ�ίΎγ�ϝΪϣ�ϭ�
� έΎϤόϣ�ΑΎϳίέ
��� έΎϤόϣ�ΑΎϳίέ�Ύϫ�εϭέ�ΪϨΑ�ϪΘγΩ
ϥ�ΕΎϴΰΟ�γέήΑ�ϭ�ΐγΎϨϣ�ΑΎϳίέ�εϭέ�ϳ�ΏΎΨΘϧ
�ΎϫέΰΑ�ϭ�ΎϫϮϟΩΎ�ϭ�ΎϫϮϟ�γέήΑ
ϪΟϮΗ�������ϩήϤϧ�ΖϓΎϳέΩ�ήΑ�Ύϣ�ΩΩή�υΎΤϟ�εέΰ�έΩ�ΪϳΎΑ�έϮάϣ�ΩέϮϣ�
�ΩΩή�ϪϓΎο�ΰϴϧ�ήϳΩ�ΐϟΎτϣ�Ζγ�ϡίϻ�ϭ�ΪηΎΑ�Ϥϧ�ϓΎ�ϞϣΎ���
��ΐδ��ϩϮΤϧ�είϮϣ�έϮψϨϣ�ϪΑ�ϭ�ϪΘγϮϴ�ΕέϮλ�ϪΑ�ΐϟΎτϣ�ΪϳΎΑ�ϦϴϨϤϫ
��ΩΩή�ϢϴψϨΗ�ϩϭή�ΎϬϳΪϨϣίΎϴϧ�ίΎγ�ϝΪϣ�ϭ�
� Σήσ
� Σήσ�ϢϴϫΎϔϣ��Ϫέ
ϢΘδϴγήϳί�Σήσ
αϼ�Σήσ
�Σήσusecase realization
�γέήΑdeployement Diagram
�ΎϫέΰΑ�ϭ�ΎϫϮϟΩΎ�ϭ�ΎϫϮϟ�γέήΑ
ϪΟϮΗ�������ϩήϤϧ�ΖϓΎϳέΩ�ήΑ�Ύϣ�ΩΩή�υΎΤϟ�εέΰ�έΩ�ΪϳΎΑ�έϮάϣ�ΩέϮϣ��ΩΩή�ϪϓΎο�ΰϴϧ�ήϳΩ�ΐϟΎτϣ�Ζγ�ϡίϻ�ϭ�ΪηΎΑ�Ϥϧ�ϓΎ�ϞϣΎ���
��ΐδ��ϩϮΤϧ�είϮϣ�έϮψϨϣ�ϪΑ�ϭ�ϪΘγϮϴ�ΕέϮλ�ϪΑ�ΐϟΎτϣ�ΪϳΎΑ�ϦϴϨϤϫ��ΩΩή�ϢϴψϨΗ�ϩϭή�ΎϬϳΪϨϣίΎϴϧ�ίΎγ�ϝΪϣ�ϭ�
É�]�Z¯���YÁ�ÊuY��ΗΎϣΪϘϣ�ϢϴϫΎϔϣ��Ϫέ
���ΪϨΘδϫ�ϭήΑϭέ�ςγϭ�τγ�έΩ�Ηϼθϣ�Ϫ�ΎΑ�ϥήΑέΎ
ςγϭ�Σήσ�ωϮϧ
�ΎϫέϮΘΎϓHuman EngineeringΩΩή�υΎΤϟ�ςγϭ�Σήσ�έΩ�ΪϳΎΑ�Ϫ�
ήΑέΎ�ςγϭ�Σήσ�Ύϫ�ϡΎ
� ϴϓή�ήΑέΎ�ςγϭ�Ύϫ�Βγ
Ϣϳήϓ�ϭ�ίϭΪϨϳϭ
�Ύϫ�ςγϭMenu-Driven
�.
��ΎϫέΰΑ�ϭ�ΎϫϮϟΩΎ�ϭ�ΎϫϮϟ�γέήΑ
ϪΟϮΗ�ϞϣΎ��ϩήϤϧ�ΖϓΎϳέΩ�ήΑ�Ύϣ�ΩΩή�υΎΤϟ�εέΰ�έΩ�ΪϳΎΑ�έϮάϣ�ΩέϮϣ��ϓΎ�ΩΩή�ϪϓΎο�ΰϴϧ�ήϳΩ�ΐϟΎτϣ�Ζγ�ϡίϻ�ϭ�ΪηΎΑ�Ϥϧ���ΕέϮλ�ϪΑ�ΐϟΎτϣ�ΪϳΎΑ�ϦϴϨϤϫ
���ϩϭή�ΎϬϳΪϨϣίΎϴϧ�ίΎγ�ϝΪϣ�ϭ�ΐδ��ϩϮΤϧ�είϮϣ�έϮψϨϣ�ϪΑ�ϭ�ϪΘγϮϴ�ϢϴψϨΗΩΩή��
�Á�É�Z��Ã{ZÌaRefactoring
έήϘΘγ�ϭ�ίΎγ�ϩΩΎϴ�ϝΪϣ��Deployement�
� ΗΎϣΪϘϣ�ϢϴϤϫΎϔϣ��Ϫέ
ΪΑ�ΎϫΪ�ϓήόϣ
��Ύϫ�εϭέ�γέήΑrefactoringΪ�
ϪΟϮΗ�������ϩήϤϧ�ΖϓΎϳέΩ�ήΑ�Ύϣ�ΩΩή�υΎΤϟ�εέΰ�έΩ�ΪϳΎΑ�έϮάϣ�ΩέϮϣ�
�ΩΩή�ϪϓΎο�ΰϴϧ�ήϳΩ�ΐϟΎτϣ�Ζγ�ϡίϻ�ϭ�ΪηΎΑ�Ϥϧ�ϓΎ�ϞϣΎ���
��ΐδ��ϩϮΤϧ�είϮϣ�έϮψϨϣ�ϪΑ�ϭ�ϪΘγϮϴ�ΕέϮλ�ϪΑ�ΐϟΎτϣ�ΪϳΎΑ�ϦϴϨϤϫ
��ΩΩή�ϢϴψϨΗ�ϩϭή�ΎϬϳΪϨϣίΎϴϧ�ίΎγ�ϝΪϣ�ϭ�
½Â»�MΗΎϣΪϘϣ�ϢϴϫΎϔϣ
έΰϓ�ϡήϧ�ΖδΗ��ϪΨϳέΎΗ
��γέήΑfailure� έΰϓ�ϡήϧ�ϢϬϣ�Ύϫ�
ˮΩΩ�ϡΎΠϧ�ΖδΗ�ΪϳΎΑ�ή
�έΰϓ�ϡήϧ�ΖδΗ�ΪϨϳήϓ
έΰϓ�ϡήϧ�ΖδΗ�έΩ�ΩϮΟϮϣ�Ύϫ�ζϘϧ
�ΖδΗ�Ύϫ�εϭέ�ϒϠΘΨϣ�ωϮϧ�γέήΑ
���ϥ�ΕΎϴΰΟ�γέήΑ�ϭ�ΖδΗ�εϭέ�ϳ�ΏΎΨΘϧ
��ΎϫέΰΑ�ϭ�ΎϫϮϟΩΎ�ϭ�ΎϫϮϟ�γέήΑ
ϪΟϮΗ�ϞϣΎ��ϩήϤϧ�ΖϓΎϳέΩ�ήΑ�Ύϣ�ΩΩή�υΎΤϟ�εέΰ�έΩ�ΪϳΎΑ�έϮάϣ�ΩέϮϣ��ϓΎ�ΩΩή�ϪϓΎο�ΰϴϧ�ήϳΩ�ΐϟΎτϣ�Ζγ�ϡίϻ�ϭ�ΪηΎΑ�Ϥϧ���ΕέϮλ�ϪΑ�ΐϟΎτϣ�ΪϳΎΑ�ϦϴϨϤϫ
���ϩϭή�ΎϬϳΪϨϣίΎϴϧ�ίΎγ�ϝΪϣ�ϭ�ΐδ��ϩϮΤϧ�είϮϣ�έϮψϨϣ�ϪΑ�ϭ�ϪΘγϮϴ�ϢϴψϨΗΩΩή��