代做CPT304 Software Engineering II Assignment 1帮做R程序

CPT304 Software Engineering II

Assignment 1

Implementing Design Patterns in a Console-Based Library Management System

Start date

13th March

Submission date

12th April

Assignment type

Group assignment (4 members)

Percentage in final marks

10%

Deliverables

1.   Source code

2.   Assignment report

Late submission policy

5% of the awarded marks shall be deducted for each working day after the submission date, up to maximum of five working days. Late submission for more than five working days will be not accepted.

Important notes

.    Plagiarism results in award of ZERO mark; all submissions will be checked by TurnItIn.

.    The formal procedure for submitting coursework at XJTLU is strictly followed. Submission link on Learning Mall will be provided in due course. The submission timestamp on Learning Mall will be used to check late submission.

Learning Outcome

.    A. Understand the key problems driving research and development in contemporary software engineering (e.g. the need to develop software using design patterns).

.    B. Demonstrate a familiarity with approaches to software engineering research and

development problems, as well as their advantages, disadvantages, and future research directions.

General instruction

Objective: The main aim of this project is to provide hands-on experience with design patterns. Students should be able to identify correct situations for different design patterns and implement them in a console-based application.

Task: Each group of 4 is to create a simple console-based Library Management System which must incorporate at least three design patterns: one Creational, one Structural, and one Behavioural.

.    Creational could be Singleton, Factory Method, or Builder。

.    Structural could be Adapter, Decorator, or Proxy.

.    Behavioural could be Observer, Strategy, or Command

Requirements:

1.   The application should be able to handle book add/remove operations, user registrations, and checking books in and out.

2.   Utilize the Singleton pattern to handle a database connection object, which in this case could be a simple file or in-memory database.

3.   Choose a use case for Factory Method or Builder pattern: Factory Method pattern can be used to create different types of books or users.

4.   For structural patterns, you might use the Decorator pattern to dynamically assign fines to overdue books.

5.   Use a behavioural pattern to handle some part of the application logic. For example, the   Strategy pattern could be used to switch between different search mechanisms for books, or the Observer pattern can notify users when a book they want becomes available.

Presentation: Each group will demonstrate their Library Management System, explaining their choice of design patterns, and demonstrating how they work in the context of their application.

Remember, understanding why you applied a particular pattern in a specific situation is just as important (if not more important) as the correct implementation of the pattern. The presentation must be recorded in a video not more than 8 minutes in length. The group can freely select one or more presenters. However, all group members must participant in the preparation of the presentation.

Report: Each group will write a 6-page report to explain and justify their choice of design patterns. The report should also explain in detail how the design patterns work in the context of their application.

Marking Criteria

The marking criteria and the weighting is based on the following factors: -

1.   Report quality (15%):

The report should be well presented. The language used in the report must be clear and concise. Whenever appropriate, use images or diagrams to aid understanding.

2.   Coding style. and naming convention (10%):

The coding style. must improve readability and maintainability of the code (Simple, clear, consistent). Naming convention for variables and methods must promote self- documentation.

3.   Design Pattern (30%):

The design pattern you adopt in your solution must be appropriate for the problem. The report must clearly explain the implementation.

4.   Completeness and accuracy of the solution (15%):

The final program must fulfil all the requirements in the problem statements. The algorithm must produce accurate results.

5.   Presentation (30%):

The presentation must show a good understanding of the project in terms of the selected designed patterned and its implementation. The presentation must cover all important aspects listed above. The presenters must show effective communication skills and well- prepared presentation materials.

Grouping

.    Each group MUST have exactly 4 members.

.    All exceptional case MUST be reported to be before 15th March via email ([email protected]).

.    All group with less than 4 members OR and individual without group will be randomly allocated.

.    Each group must select a group leader, who will be responsible for assignment submission.

.    After completing the assignment, before your submission, group leader must call for a meeting to conduct a peer evaluation using the below “Individual Contribution” form. The form. must be signed by all members and attached to the appendix in the report.

Submission and markings notes:

.    You must submit the assignment report in PDF format via Learning Mall by the above submission date. Name the report as CPT304-A1-Report-GroupLeaderID.pdf

.    The report MUST NOT be more than 6 pages (excluding the cover page). Marks will only be given to the first 6 pages in your report.

.    You must submit the source code in ONE single ZIP file via Learning Mall by the above submission date. Name the zip file as CPT304-A1-Code-GroupLeaderID.zip

o Files in proprietary or non-standard file formats may not be readable and so are likely to be ignored.

o Do not submit the compiled binary, which will cause your zip file to be overly large.






热门主题

课程名

int2067/int5051 bsb151 babs2202 mis2002s phya21 18-213 cege0012 mgt253 fc021 mdia1002 math39512 math38032 mech5125 cisc102 07 mgx3110 cs240 11175 fin3020s eco3420 ictten622 comp9727 cpt111 de114102d mgm320h5s bafi1019 efim20036 mn-3503 comp9414 math21112 fins5568 comp4337 bcpm000028 info6030 inft6800 bcpm0054 comp(2041|9044) 110.807 bma0092 cs365 math20212 ce335 math2010 ec3450 comm1170 cenv6141 ftec5580 ecmt1010 csci-ua.0480-003 econ12-200 ectb60h3f cs247—assignment ib3960 tk3163 ics3u ib3j80 comp20008 comp9334 eppd1063 acct2343 cct109 isys1055/3412 econ7230 msinm014/msing014/msing014b math2014 math350-real eec180 stat141b econ2101 fit2004 comp643 bu1002 cm2030 mn7182sr ectb60h3s ib2d30 ohss7000 fit3175 econ20120/econ30320 acct7104 compsci 369 math226 127.241 info1110 37007 math137a mgt4701 comm1180 fc300 ectb60h3 llp120 bio99 econ7030 csse2310/csse7231 comm1190 125.330 110.309 csc3100 bu1007 comp 636 qbus3600 compx222 stat437 kit317 hw1 ag942 fit3139 115.213 ipa61006 econ214 envm7512 6010acc fit4005 fins5542 slsp5360m 119729 cs148 hld-4267-r comp4002/gam cava1001 or4023 cosc2758/cosc2938 cse140 fu010055 csci410 finc3017 comp9417 fsc60504 24309 bsys702 mgec61 cive9831m pubh5010 5bus1037 info90004 p6769 bsan3209 plana4310 caes1000 econ0060 ap/adms4540 ast101h5f plan6392 625.609.81 csmai21 fnce6012 misy262 ifb106tc csci910 502it comp603/ense600 4035 csca08 8iar101 bsd131 msci242l csci 4261 elec51020 blaw1002 ec3044 acct40115 csi2108–cryptographic 158225 7014mhr econ60822 ecn302 philo225-24a acst2001 fit9132 comp1117b ad654 comp3221 st332 cs170 econ0033 engr228-digital law-10027u fit5057 ve311 sle210 n1608 msim3101 badp2003 mth002 6012acc 072243a 3809ict amath 483 ifn556 cven4051 2024 comp9024 158.739-2024 comp 3023 ecs122a com63004 bms5021 comp1028 genc3004 phil2617
联系我们
EMail: 99515681@qq.com
QQ: 99515681
留学生作业帮-留学生的知心伴侣!
工作时间:08:00-21:00
python代写
微信客服:codinghelp
站长地图