Design a series of uml class diagrams

Assignment Help Software Engineering
Reference no: EM132590501

Unit 20 Advanced Programming - Higher National Diploma in Computing

Learning Outcome 1: Examine the key components related to the object orientated programming paradigm, analysing design pattern types

Learning Outcome 2: Design a series of UML class diagrams

Learning Outcome 3: Implement code applying design patterns

Learning Outcome 4: Investigate scenarios with respect to design patterns

Assignment Brief

Scenario

This scenario is about order management system for United Shop at Baththaramulla. Customer make order. Customers can be either corporate customer or personal customer. Both of them has name and address private type attributes. Corporate customer has contact name and credit limit private attributes. Personal customer has credit card number attribute. That also private. There is a association between employee and corporate customer. Zero or more corporate customer create from employees. An employee can or cannot be corporate customer. order is composed of customer. The order could contain extract one customer, while each customer can make many orders. There is an association between order and order line. Order line has 2 attributes which are private. They are quantity and price. An order can have zero or many order line. Order line and product has association. Research Project Brief

Q1. Assume you work as a junior programmer in Sinha Developers. Currently you are assigned to a development project which is based on Object Oriented Programming. The team leader has assigned you the task to develop a report comprising of the following:
i. Examine the object-oriented programming paradigm characteristics and develop a professionally formatted report that would include these characteristics
• Encapsulation, polymorphism, constructors/destructors, sub objects, abstract/concrete, interface, method, redefinition, generics/templates, containers
• Include the information about class relationships like generalization/Inheritance, realization, dependency, aggregation, composition etc.
ii. Determine the design patterns from each of the creational, structural and behavioral pattern types.
iii. Analyse the relationship between OOP paradigm and the design patterns.

Q2. You are working in Sinha Developers to help improve their documentation for their software development. Your role is to alleviate this situation by developing a series of UML diagrams to reflect the given scenario and to develop new diagrams for future implementation.
You will be required to analyse the existing scenario and then build accurate UML class diagrams. You can make assumption when it is needs. Once completed you will also need to identify possible situations where design patterns would be beneficial and then develop the UML diagrams reflecting the design patterns.

Q3. You are required to implement design patterns using an IDE such as Eclipse or net beans with Java language. Use an IDE (Eclipse) to develop a small application that implements based on UML class diagram create in Q2.

Q4. There are range of design patterns - creational, structural and behavioral pattern types. Analyze given scenarios(a) to (d) and identify the most appropriate design pattern from a range.

a) You are a member of a programming team, and have been asked to design the class structure for a custom aircraft design system in a computer game. An aircraft will have two basic properties: its name and capacity. Each aircraft can then be customised with various additions. An aircraft may optionally have one or all of a first-class cabin, a viewing area, a communications system and/or a booster rocket. A first-class cabin means the aircraft can have first-class passengers, a viewing area is a place where passengers can watch the scenery below, a communications system is so passengers can talk to people on the ground, and a booster rocket enables the aircraft to move twice as fast. For example, the aircraft GoodCruiser has a capacity of 100 passengers, a first-class cabin and a booster rocket. The aircraft RuthlessRogue has a capacity of 20 passengers, a viewing area and a communications system.
One member of your team quickly begins outlining a set of classes on the whiteboard:
// The generic aircraft
class Aircraft { private int capacity; private String name; }
// An aircraft with an added first-class cabin
class FirstClassCabinAircraft extends Aircraft { }
// An aircraft with an added viewing area
class ViewingAreaAircraft extends Aircraft { }
// An aircraft with an added communications system
class CommunicationsSystemAircraft extends Aircraft { }
// An aircraft with an added first-class cabin and communications system class FirstClassCabinCommunicationsSystemAircraft extends Aircraft { }
What is wrong with the design? Which design pattern would be suitable to remove deficiencies in the design.

b) Consider a scenario of a database server. We want to efficiently manage and restrict the number of connections to databases. Which design pattern would be suitable in this case?

c) Consider a scenario of database transactions. There are different types of database transactions, e.g. add record, update record and delete record etc. If transaction fails, then there is an option of rollback transaction. Which design pattern is suitable to handle these types of transactions and also provides the ability to encapsulate these processes?

d) Consider a scenario of house building. There are two options to build house i.e. Wooden House and Glass House. However, the processes / steps for building any two of them are same which include operations such as build foundation, build pillars, build walls and build windows etc. Although, the processes / steps are same but implementation is different for wooden and glass houses. Which design pattern would be suitable to implement this scenario?

Attachment:- Advanced Programming.rar

Reference no: EM132590501

Questions Cloud

Masters in emergency management : You are not only an emergency manager (disaster management) in your county, but also a graduate student completing
Determine what is the direct materials efficiency variance : What is the direct materials efficiency variance?Direct materials flexible budget variance-unfavorable $15,000 Actual direct materials used 103,000 lbs
Why might the given myths be maintained : Many people think that a person with a mental disorder is weak, dangerous, and incurable. Explain why these are not common characteristics in those with mental.
Main requirements for keeping whs records : If another worker reported a workplace hazard to you, what would you do? Include information on conducting risk assessments in your answer.
Design a series of uml class diagrams : Examine the key components related to the object orientated programming paradigm, analysing design pattern types - Design a series of UML class diagrams
Find how much is the direct labor standard cost per hour : Carpenters' wages are $25.00 per hour. Payroll costs $3.00 per hour, and benefits are $5.00 per hour. How much is the direct labor standard cost per hour?
Describe the desired terminal behavior in objective terms : Shaping can be used to help learners acquire new behaviors. For this discussion, pick a behavior that would be best addressed using shaping.
Explain fundamental issues between different generations : Explain fundamental issues between different generations working together in the workplace.
Identify the target behavior in your case study : Define the target behavior in your case study. Your definition must be objective, clear, and discriminative so your instructor can understand what is.

Reviews

Write a Review

Software Engineering Questions & Answers

  Generate an infinite number of tests from grammar

Construct a valid URL that is not valid with respect to your regular expression. If you have done an outstanding job in part 1, explain why your regular expression does not have any such URLs.

  Consider a situation in which your team has just finished

consider a situation in which your team has just finished the design phase and is about to start coding. your key

  Impact of web technologies on your career and on the world

The ebb and flow of new and old Web technologies dramatically impacts businesses and people alike. In the case of the former, new techniques.

  Describe famous attack that leveraged specific vulnerability

For this conference, explain what a specific vulnerability is, describe a famous attack that leveraged it (For example, the Morris worm leveraged the buffer overflow vulnerability), and how it can be prevented/minimized.

  CMS3405 Advanced Software Development Assignment

CMS3405 Advanced Software Development Assignment help and solution, University of Huddersfield - assessment writing service.

  Draw a control flow graph

Construct a use case to include name, summary, actor, precondition, description, alternatives, and post condition - construct a use case scenario (specific steps through use case)

  Systems analysis and design

You will create an image, but first you have to go through some training and planning phases, just as a programmer would do. Programming, systems analysis and design, and database management all require extensive planning.

  Define How does the role of ranking requirements help

How does the role of ranking requirements help in feature selection cost-benefit decision making

  Describe and compare the various sources of software

Describe and compare the various sources of software. How can you decide among various off-the-shelf software options? What criteria should you use

  What are the phases of the sdlc

What does SDLC stand for? What are the phases of the SDLC? Explain in one or two sentences of your own words what happens in each phase. If problems occur during the SDLC, is it better to identify and solve those problems near the beginning or ..

  For the most recent year wilson enterprises had sales of

for the most recent year wilson enterprises had sales of 689000 cost of goods sold of 470300 depreciation expense of

  Compare and contrast sdlc and 2 other development models

When looking at the life span for the development of an application or system from the initial idea proposal through final deployment, there are several phases to accomplish. Several models examine the required phases along with tools to support e..

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd