Presentation is loading. Please wait.

Presentation is loading. Please wait.

2015-11-17 اليوم العلمي لتكنولوجيا المعلومات تكنولوجيا المعلومات في فلسطين طموحات و امال Patterns: Tools For Reuse Dr. Tawfiq S.M. Barhoom – د. توفيق سليمان.

Similar presentations


Presentation on theme: "2015-11-17 اليوم العلمي لتكنولوجيا المعلومات تكنولوجيا المعلومات في فلسطين طموحات و امال Patterns: Tools For Reuse Dr. Tawfiq S.M. Barhoom – د. توفيق سليمان."— Presentation transcript:

1 2015-11-17 اليوم العلمي لتكنولوجيا المعلومات تكنولوجيا المعلومات في فلسطين طموحات و امال Patterns: Tools For Reuse Dr. Tawfiq S.M. Barhoom – د. توفيق سليمان برهوم tbarhoom@iugaza.edu Head of Info.Sys.Tech.Dep.- رئيس قسم نظم تكنولوجيا المعلومات Faculty of Info.Tech.- كلية تكنولوجيا المعلومات Islamic university-Gaza - – الجامعة الاسلامية- غزة

2 2015-11-17 Abstract With each attempt a lot of works repeated and may in the same way of previous successful attempts. (Recurring Problem) Pattern: a way to capture and document successful experiences in solving recurring problem in a domain from experts in a structured way. Thus novices can benefit from the know-how and skills of experts. Smartest idea: is the documentation pattern using a language that every one can understand. This presentation to Introduce the pattern concept The relationships amongst the patterns are the clue to form a pattern language. Show how patterns can contribute software engineering. Steps to work with patterns in your domain.

3 2015-11-17 capturing experience from experts in a structured way. novices can benefit from that know how the experts thought on the problem and can inherit them skills Patterns Concept value of experience

4 2015-11-17 Pattern a solution to a problem in a context Patterns users Context Forces Solution Problem Operates on Has Solves Resolves Prioritizes The relation between the pattern elements a recurring set of situations in which the pattern applies. Thereby all relevant context parameters have to be taken into account a set of forces goals and constraints a canonical design form or design rule that someone can apply to resolve these forces

5 2015-11-17 Patterns Template format to be used for describing patterns “Alexandrian Form” Martin [MR-01] wrote: "Each pattern is a three part rule, which express a relation between a certain context, a problem, and a solution" "Goff format" = "canonical form “ Name : memorable phrase to stress the action implied in applying the pattern. Problem : A single sentence gives the user glance about the heart of the problem addressed by the pattern. The sentence may be followed by short statement to describe the complete problem.. Context : A recurring set of situations in which the pattern applies, giving the prerequisites that should be satisfied before considering the pattern. Forces : Shows what considerations are to be accounted for when deciding on a solution to the problem Solution : Informal Textual Notation, Formal Textual Notation (Idioms), Graphical Notation Examples : sample(s) app.s of the pattern which illustrate Related Patterns : relationships between this pattern and others Known Uses : Describes known occurrences of the pattern and its application within existing systems

6 2015-11-17 Patterns Benefits consequences enable large-scale reuse of software architectures. Help document systems to enhance understanding. Patterns explicitly capture expert knowledge and design tradeoffs, and make this expertise more widely available. Patterns help improve developer communication.

7 2015-11-17 Patterns Mining finding patterns The process of looking for patterns to document (reverse-architecting ) No theoretical approaches have been developed for patterns mining. It is an attempt by practitioners to document their best practices. not easy task - Patterns should tell the complete success experience story. should help its users to: comprehend existing systems; customize systems to fit user needs; and construct new systems

8 2015-11-17 Patterns Mining (cont) finding patterns important consideration within the pattern mining 1. Focus on practicability: describe proven solutions to recurring problems 2. Aggressive disregard of originality: writers do not need to be the original 3. Non-anonymous review: contacts the pattern author(s) for discussion. 4. Writer's workshops instead of presentations: Rather than being presented by the individual authors,patterns are discussed in writer's workshops 5. Careful editing: authors have to incorporate all the comments before presenting the patterns in their finished form

9 2015-11-17 Patterns Relationships work together important questions: Amongst the many different patterns (X,Y) that are being discovered 1. are any related to each other? What are the characteristics of such a relationship? 2. Do two patterns address a similar problem area? 3. Is it possible to combine two patterns? 4. What are the criteria for classifying patterns into categories? problem Pattern Y Pattern X

10 2015-11-17 Patterns Relationships (con.) work together GOF catalogue: twenty design patterns and their mutual relationships. classified into three categories according to characterization (Creational Patterns, Structural Patterns, and Behavioral Patterns) problem Pattern X Pattern Y Use (composition) Refines(inheritance) Conflicts(ME ) PrimarySecondary Similar – Use, Refines Combines - Use Requires - Use Pattern X

11 2015-11-17 Patterns collections Patterns do not stand-alone Three different types of pattern collections have been identified, These three pattern collections possess varying degrees of structure and interaction : pattern language - a collection of patterns and the rules to combine them into an architectural style (framework) [common def.]. pattern system - a cohesive set of related patterns which work together to support the construction and evolution of whole architectures, and pattern catalog - a collection of related patterns, where patterns are subdivided into a small number of broad categories,

12 2015-11-17 Patterns Language smartest idea behind the patterns Definition collection of patterns and the rules to combine them into an architectural style. describe software frameworks or families of related systems it is a prose document, with a purpose to guide and inform the designer. includes rules and guidelines which explain how and when to apply its patterns to solve a problem, which an individual pattern could not solve. These rules and guidelines suggest the order and granularity for applying each pattern in the language. good pattern languages should be generative, and capable of generating all the possible sentences from a rich and expressive pattern vocabulary

13 2015-11-17 Patterns Language Benefits reduce the time it takes people to communicate they reduces the work to be done in the domain makes procedure to solve the problem more interesting The well-documented patterns help in communicated with others they don ’ t understand what you are talking about.

14 2015-11-17 Pattern in Software Development use patterns Design Pattern Library Design Pattern Development process Domain Knowledge Information System Choice design Pattern Apply design pattern Choice knowledge Build system

15 2015-11-17 Design pattern (pattern): - Pattern definition - principle - Pattern groups - DOMAIN - Patterns languages DOMAIN understanding - Point out recurring problems in a DOMAIN DOMAIN to be documented using patterns -Patterns on a DOMAIN Template - should be found Mining – discover and mining the recurring problem Relationships – define the relationships amongst the patterns Languages – introduce patterns languages depend on the relationships. - DOMAIN application model using the language Flow Steps While Work With Patterns

16 2015-11-17 Description of the XML-based security patterns language (example) Confidentiality Integrity Authentication Nonrepudiation Encryption processDecryption process Signing processVerification process X-KISS X-KRSS Inside XML Document Outside XML Document Encryption Dig. Signature SAML XKMS XACL S2ML.:.: Security Concept Patterns XML-Based Security Analysis Patterns Process Patterns Security Concepts Understood XML-based Security Analyzed

17 2015-11-17 شكرا ؟؟


Download ppt "2015-11-17 اليوم العلمي لتكنولوجيا المعلومات تكنولوجيا المعلومات في فلسطين طموحات و امال Patterns: Tools For Reuse Dr. Tawfiq S.M. Barhoom – د. توفيق سليمان."

Similar presentations


Ads by Google