تمرينات در lss سری سوم

28
در ات ن ي ر م تLSS وم س ری س ی ع م لا ن ي ش ف ا ار ز ف رم ا ن رای کت وی د( ج ش ن دا86231905

Upload: denis

Post on 19-Mar-2016

79 views

Category:

Documents


0 download

DESCRIPTION

تمرينات در LSS سری سوم. افشين لامعی دانشجوی دکترای نرم افزار 86231905. سؤال: Prototype Design Pattern. از نوع Creational Design Pattern است. نوع Object به وسيله يک نمونه، تعريف و ايجاد Object جديد، Clone میشود. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: تمرينات در  LSS سری سوم

در LSSتمريناتسوم سری

المعی افشينافزار نرم دکترای دانشجوی

86231905

Page 2: تمرينات در  LSS سری سوم

Prototype Design Patternسؤال: نوع • .Creational Design Patternاز است ايجاد Objectنوع • و تعريف نمونه، يک وسيله به

Object ،جديدClone . میشود از – استفاده به نياز Creatorهای Subclassعدم

. کالينت برنامه در مربوطهتوليد – هزينه کردن جديد Objectکم•

Page 3: تمرينات در  LSS سری سوم

: Prototype Design Patternسؤال...•: ايجاد نحوه

پايه – کالس يک متد Abstractساختن Cloneدارایپياده – و پايه کالس اين از ديگر های کالس استقاق

آنها Cloneسازی دراز Cloneفراخوانی – استفاده جای به کالينت، توسط

new جديد کالس يک ايجاد و

Page 4: تمرينات در  LSS سری سوم

: Prototype Design Patternسؤال...ساختار•

Page 5: تمرينات در  LSS سری سوم

: Prototype Design Patternسؤال...مثال•

Page 6: تمرينات در  LSS سری سوم

و: کیفيت کنترل برای ليستی چک سؤالسيستم معماری عملکرد

From http://www.opengroup.org/• What other applications and/or systems require integration with yours? • Describe the integration level and strategy with each. • How geographically distributed is the user base? • What is the strategic importance of this system to other user communities inside or outside the

enterprise? • What computing resources are needed to provide system service to users inside the enterprise? Outside

the enterprise and using enterprise computing assets? Outside the enterprise and using their own assets? • How can users outside the native delivery environment access your applications and data? • What is the life expectancy of this application? • Describe the design that accommodates changes in the user base, stored data, and delivery system

technology. • What is the size of the user base and their expected performance level? • What performance and stress test techniques do you use? • What is the overall organization of the software and data components? • What is the overall service and system configuration? • How are software and data configured mapped to the service and system configuration?

Page 7: تمرينات در  LSS سری سوم

: و... کیفيت کنترل برای ليستی چک سؤالسيستم معماری عملکرد

• What proprietary technology (hardware and software) is needed for this system? • Describe how each and every version of the software can be reproduced and re-deployed over time. • Describe the current user base and how that base is expected to change over the next 3 to 5 years. • Describe the current geographic distribution of the user base and how that base is expected to change over the next 3 to 5

years. • Describe the how many current or future users need to use the application in a mobile capacity or who need to work off-line. • Describe what the application generally does, the major components of the application and the major data flows. • Describe the instrumentation included in the application that allows for the health and performance of the application to be

monitored. • Describe the business justification for the system. • Describe the rationale for picking the system development language over other options in terms of initial development cost

versus long term maintenance cost. • Describe the systems analysis process that was used to come up with the system architecture and product selection phase of

the system architecture. • Who besides the original customer might have a use for or benefit from using this system? • What percentage of the users use the system in browse mode versus update mode? • What is the typical length of requests that are transactional? • Do you need guaranteed data delivery or update, or the system tolerate failure? • What are the up-time requirements of the system? • Describe where the system architecture adheres or does not adhere to standards. • Describe the project planning and analysis approach used on the project.

Page 8: تمرينات در  LSS سری سوم

: و... کیفيت کنترل برای ليستی چک سؤالسيستم معماری عملکرد

اساس • :RUPبريکديگر – از ها پردازش استقالل ميزان–) غيرهمزمانی ) و همزمانی ها پيام تبادل نحوهپيچيدگی Componentتعداد – ميزان و وابستگی ها،

آنها ارتباطالگوهای – و طراحی الگوهای از استفاده ميزان

معماریاز – استفاده ها Packageميزان

Page 9: تمرينات در  LSS سری سوم

آنها Stakeholderانواع های خواسته و هاهای ) Software Architecture in Practiceمنبع: و 9فصل

1)• Developing organization’s management– Low cost, keeping people employed.

• Marketing– Neat features, short time to market, low cost,

parity with competing products• End user– Behavior, performance, Security, Reliability,

usability

Page 10: تمرينات در  LSS سری سوم

های Stakeholderانواع خوLاسته و هاآنها

• Maintenance organization– Modifiability, extensibility

• Customer– Low cost, timely delivery, not changed very often

Page 11: تمرينات در  LSS سری سوم

ريسک: به مربوط مسائل سؤالکه • رخدادی احتمال از است عبارت ريسک يا مخاطره

منفی اثر .Impact)دارای باشد( افزاری نرم پروژه برمیشود • بيان شکل دو به ريسک

خرابی – رخداد به منجر شرايط توصيفخرابی – خود توصيفاولين: • برای محدودی، زمان طی است قرار شرکتی مثال

فناوری از استفاده با مشتری OOبار به و توليد محصولیزمينه. در بايد کليدی پرسنل .OOبدهد ببينند آموزش

نيازمندی: – محصول است ممکن تجربه، نبود به توجه با ريسک . نکند برآورده را نظر مورد کيفيت و کارآيي های

Page 12: تمرينات در  LSS سری سوم

: ريسک... به مربوط مسائل سؤال• LناساييLش غيرقابل برخی و LناساييLش قابل ها ريسLک برخی

. نداريم آنها وقوع احتمال از Lاطالعی که هسLتند•. باشLد بينی پيش غيرقابل يا Lبينی پيش قابل اسLت ممکن ريسLک•. دارد وجود واکنشLی و کنشLی های روش ريسLک، با مقابله برای•. طبيعی حوادث مانند هسLتند کنترل غيرقابل ها ريسLک Lبرخی•Risk Mitigation از Lپس که اسLت فعاليتی ريسLک، Lکاهش يا

بندی اوليت و اثر Risk Impactشناخت تا میدهيم Lانجام ها. دهيم Lکاهش پروژه بر را ريسLک مخرب

• Lمثل کيفی مقادير يا درصد عدد، با میتوان را lowو Highريسک. داد نشLان

Page 13: تمرينات در  LSS سری سوم

: ريسک... به مربوط مسائل سؤالاست • ای نقطه ريسک، منحنی در ارجاع نقطه

. نمیباشد صالح به پروژه ادامه پس آن از که

Page 14: تمرينات در  LSS سری سوم

تخمين: به مربوط مسائل سؤالApplied Software Project Management, O’Reillyمنبع:

•. افزاری نرم پروژه يک انجام برای وزمان هزينه برآورد از است عبارت افزار نرم مهندسی در•: افزار نرم مهندسی در تخمين های روش ترين Lمتداول

• Parametric Estimating • Wideband Delphi • COCOMO• SLIM • SEER-SEM Parametric Estimation of Effort, Schedule, Cost, Risk. Minimum time and staffing

concepts based on Brooks's Law • Function Point Analysis • Proxy-based estimating (PROBE) (from the Personal Software Process) • The Planning Game (from Extreme Programming) • Program Evaluation and Review Technique (PERT) • Analysis Effort method • TruePlanning Software Model Parametric model that estimates the scope, cost, effort and

schedule for software projects.

Page 15: تمرينات در  LSS سری سوم

: تخمين... به مربوط مسائل سؤال• :Lروش :COCOMOمثال

–COnstructive COst Model توسط – شده Barry Bohemارائههای – داده اساس بر پايه رگراسيون فرمول يک از مشخصات Historicalاستفاده و پروژه

فعلی پروژهبرنامه )• سايز از تابعی اساس بر را هزينه اوليه، . LoCروش میزند( تخمين•: زير های پروژه به اعمال قابل

• Organic projects - are relatively small, simple software projects in which small teams with good application experience work to a set of less than rigid requirements.

• Semi-detached projects - are intermediate (in size and complexity) software projects in which teams with mixed experience levels must meet a mix of rigid and less than rigid requirements.

• Embedded projects - are software projects that must be developed within a set of tight hardware, software, and operational constraints.

Page 16: تمرينات در  LSS سری سوم

CORBAسؤال: ) نشد) فراهم ارائه فرصت اما شده آماده کالس در ارائه برای زير مطلب

•CORBA مخففCommon Object Request Broker Architecture. است

گروه • .OMGتوسط است شده ارائهاز • مستقل زيرساخت و معماری vendorيک

ای شبکه های محيط در ها برنامه ارتباط برای. میکند ارائه

Page 17: تمرينات در  LSS سری سوم

استفاده CORBAموارد

•Middleware سطح در که Enterpriseمناسب ،از ها ماشين انواع راحتی گرفته Mainframeبه

. میکند يکپارچه را جيبی کامپيوترهای تازياد، • کالينت تعداد با و hit rateسرورهايي باال

. باال اعتماد قابليت نيازمندهای • سيستم Embedded-Systemو real-timeدر

. است استفاده قابل نيز ها

Page 18: تمرينات در  LSS سری سوم

تعاريفعملکردها • بيانگر و بوده ها برنامه سازنده واحد اشياء،

) ( . دنيای در معادلی هميشه نه ً معموال هستند ها داده و. دارند واقعی

نمونه • مثل هستند، نمونه چندين دارای ً معموال اشياءمشتريان به متعلق که اعتباری کارت يک مختلف های

. است مختلفبا • رابط يک شیء، نوع هر تعريف OMG IDLبرای

شیء،. عملکردهای از استفاده برای کالينت میشودرابط از . IDLبايد پياده از رابط جداسازی کند استفاده

اساس توسط CORBAسازی، که فراهم IDLاستمیشود.

•IDL اما است سازی برنامه های زبان از مستقلتوسط معرLوف، های زبان تمام به آن OMGنگاشت

. است شده ارائه

Page 19: تمرينات در  LSS سری سوم

تعاريف... • ) ( ً کامال ها داده و اجرایی کد اشياء سازی پياده

. است پنهان ها کالينت ديد ازطريق • از ً منحصرا اشياء به ها کالينت دسترسی

عملکردهای فراخوانی با شده، ارائه های رابطبا شده اجازه IDLتوصيف پارامترهای با فقط و

. است امکانپذير شده، داده

Page 20: تمرينات در  LSS سری سوم

تعاريف... کامپايل • و درون IDLنوشتن مربوطه Clientهای

Stub وServer Skeleton –Stub وSkeleton و کالينت برای پراکسی نقش در

. میکنند کار سرور•. سرور و کالينت متناظر Lاشياء نوشتن

دو – در يا مختلف زبان دو به میتوانند سرور و کالينتORB. شوند نوشته مختلف

–ORB ارائه و دور راه های فراخوانی جهت واسط يک. است کالينت به دريافتی پاسخ

Page 21: تمرينات در  LSS سری سوم

به کالينت از درخواست جريانسرور

Page 22: تمرينات در  LSS سری سوم

دور راه از فراخوانی•. کالينت توسط سرور به گر اشاره دريافت

جمله – از مختلفی های روش Naming Service and the Trader Service برای

) دارد وجود گر اشاره دريافت•. مربوطه عملکرد فراخوانی

قبل، – حالت با تفاوت که remoteتنها است سرور بودنشبکه ORBتوسط سمت به درخواست و شده داده تشخيص

. میشود فرستادهمیداند • را فراخوانی مورد عملکرد جزئيات ً دقيقا کالينت

و) ...( خروجی و ورودی پارامترهای سرور، نوعميان • پروتکل ORBسازگاری وسيله به تأمين IIOPها

میشود.

Page 23: تمرينات در  LSS سری سوم

دور... راه از فراخوانی

Page 24: تمرينات در  LSS سری سوم

بيشتر مطالعه• CORBA Basics (www.omg.org)• Common Object Request Broker Architecture:

Core Specification (http://www.omg.org/technology/documents/corba_spec_catalog.htm)

• (CORBA success stories) http://www.corba.org

Page 25: تمرينات در  LSS سری سوم

از استفاده در موجود مسائلVersoion

صحيح Versionانتخاب •از – Proxyاستفادهاز – Bitmapاستفاده

برای • ها فايل Loadانتخاببندی – مربوطه Versionدسته کامپايلر نوع اساس بر ها

های • فايل Repositoryناهمگونیاز – همگون Middle wareاستفاده سازی ذخيره برایانديس – از استفاده با ها فايل بندی طبقه

ها Versionوابستگی •هر – ويژگی عنوان به Versionثبتذخيره – Baselineتنهاجدول – از Lookupاستفاده

Page 26: تمرينات در  LSS سری سوم

آزمايشگاه سيستم های هوشمند26

: نمودار... هر UMLسؤال متناظرView

Conceptual and analysis viewpointViewpoint UML diagram Description

Analysis focused Class Describe system entities in response to a scenario.

Often refer to as a view of participating classes or VOPC

Analysis interaction interaction Interaction diagram between objects for analysis

Analysis overall Class Combination of all classes from all focused analysis

viewpoints

Context Use case Show the external system actors and the system under

design

Page 27: تمرينات در  LSS سری سوم

آزمايشگاه سيستم های هوشمند27

: نمودار... هر UMLسؤال متناظرView

Logical design viewpointsViewpoint UML diagram Description

Component Component Component communications

Component interaction Interaction Interactions among components

Component state State/activity State transition/activity diagram for a component or for a set of

components

Layered subsystem Packages Layering and subsystem design

Logical data Classes Critical data views used for integration

Subsystem interface dependency

Class Subsystem dependencies and interfaces

Page 28: تمرينات در  LSS سری سوم

آزمايشگاه سيستم های هوشمند28

: نمودار... هر UMLسؤال متناظرView

Environment/physical viewpointViewpoint UML diagram Description

Deployment Deployment Mapping of software to hardware for distributed

systems

Physical data Deployment Physical view of a particular database

Process Deployment Show the processes of a particular system instance

Process state State Show the dynamic states of a process