Presentation is loading. Please wait.

Presentation is loading. Please wait.

Revision Session 1.UML Overview 2.Detailed software design : operation specification, designing for re-use.

Similar presentations


Presentation on theme: "Revision Session 1.UML Overview 2.Detailed software design : operation specification, designing for re-use."— Presentation transcript:

1 Revision Session 1.UML Overview 2.Detailed software design : operation specification, designing for re-use

2 Introductory Topics : Sample Questions 1.Discuss in detail the main activities in the software development lifecycle. 2.Compare and contrast some different lifecycle models. 3.What techniques can be used to gather information about the requirements for a proposed system? 4.How can diagramming techniques be used to record such information? Why use them? 5. What is UML? Which UML diagrams be used at different stages in the software lifecycle? 6.Discuss in detail, using examples, the following object oriented design concepts: – Object – Class – Inheritance – Polymorphism

3 What is UML? Which UML diagrams be used at different stages in the software lifecycle? Need to understand and define the main stages in the lifecycle Need to understand what each diagram is used for and when A sketched/referenced example can illustrate that you understand/ know what you are talking about

4 Main Activities in the Software Lifecycle Initiation Requirements Gathering(elicit, document, verify) Requirements Analysis Software design Implementation Testing System implementation Review and Maintenance

5 What is UML? Unified Modelling language Developed to enable IT professionals to model computer applications in a standard language- independent way. UML provides diagrams that increase the ease of understanding of an application under development Based round Object oriented techniques

6 Main UML diagrams and the software Lifecycle Use Case Diagrams Activity Diagrams Sequence Diagrams State Diagrams Class Diagram Package Diagrams Deployment diagrams Requirements gathering Requirements analysis DESIGN Implementation ANALYSIS Software design

7 Use Case Diagrams- can be used together with use case templates to document and help verify requirements during requirements gathering. The templates are essential as they provide detail. Can also be used to help with user acceptance testing – the software is tested to see if it fits the specified needs. Activity Diagrams- can be used at different stages e.g. To document a high level business process, show the logic of a use case, or to show the logic within an operation

8 Class Diagram-The UML Class Diagram provides a model that can be easily translated into software components. It shows the static structure of the system and how different entities/objects relate. Can be used in analysis to show... logical classes - things relating to the organisation and with more detail in software design to show implementation classes, which are the things that programmers typically deal with.

9 Sequence Diagrams – show how objects communicate to achieve the goal of a use case and illustrate the sequence of message.passing. Provide detail on the interaction between objects and the division of responsibility between objects- which classes hold which operations. Used to provide more detail in requirements analysis and also in more detailed software and user interface design State Diagrams- models the different states that a class can be in and how that class transitions from state to state

10 Package Diagrams- are composed of packages and show the dependencies between them. They enable you to organize model elements, such as use cases or classes, into groups. Packages are depicted as file folders and can be applied on any UML diagram. They are used at the analysis stage to organise requirements into subsystems and at the design stage to depict a high-level overview of your architecture/design. Deployment diagrams- show how a system will be physically deployed in the hardware environment, where the different components of the system will physically run and how they will communicate with each other.

11 Discuss the types of UML diagram listed below. What can they be used for? Give examples. Use case diagram Class diagram Collaboration/robustness Diagram Activity diagram. Sequence diagram Package Diagram -Need a description (as above) -Define the elements(and use examples) -Draw an example -Active revision to make sure you understand

12 2. Detailed software Design What are operation specifications used for in systems analysis? Discuss, with the aid of examples, some different ways of specifying operations, both declarative and procedural. An operation is required to calculate a plane fare. First class passengers are charged the first class fare and have 20kg baggage free and free seat pre-booking. Above 20kg they are charged €2 per kilo over and €20 per large item like golf clubs. Normal passengers pay €2 per kilo for all baggage and and €20 per large item like golf clubs. They may pre-book a seat but will pay €5 for this. Write an operation specification for the above operation using an appropriate method or combination of methods. You are also required to justify your particular choice of method/methods.

13 Discuss three approaches to software reuse. Discuss the meaning of the following concepts, for each indicating how it can contribute to quality software development: – Generalisation (inheritance) – Encapsulation – Components – Patterns

14 Requirements analysis- identifying classes and relationships Class diagrams : identifying classes and relationships Activity diagrams Robustness/communication diagrams Sequence diagrams State machine diagrams

15 What are class stereotypes and why are they useful? What are the advantages of this way of partitioning a system using entity, boundary and control class stereotypes?

16 Approaches to Software re-use Object specification – different methods: pre and postconditions, pseudocode, decision tables etc.


Download ppt "Revision Session 1.UML Overview 2.Detailed software design : operation specification, designing for re-use."

Similar presentations


Ads by Google