0% found this document useful (0 votes)
20 views

Assignment - 1 - Programming - Afetr IV - New Plan 1

The document provides specifications for an assignment to develop a drug management software application. It outlines the key features and functionalities required, including tracking drug attributes, expiration dates, quantities, and providing search capabilities. Students are asked to implement basic algorithms to search for alternative drugs and handle various programming tasks. The tasks involve defining an algorithm using pseudo code, outlining the development stages, identifying coding and implementation challenges, and assessing the proposed algorithm when implemented in code. Source codes using different programming paradigms are provided as examples to compare the paradigms based on characteristics like scalability, readability, reusability and code organization.

Uploaded by

mhndbakyr31
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Assignment - 1 - Programming - Afetr IV - New Plan 1

The document provides specifications for an assignment to develop a drug management software application. It outlines the key features and functionalities required, including tracking drug attributes, expiration dates, quantities, and providing search capabilities. Students are asked to implement basic algorithms to search for alternative drugs and handle various programming tasks. The tasks involve defining an algorithm using pseudo code, outlining the development stages, identifying coding and implementation challenges, and assessing the proposed algorithm when implemented in code. Source codes using different programming paradigms are provided as examples to compare the paradigms based on characteristics like scalability, readability, reusability and code organization.

Uploaded by

mhndbakyr31
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

Luminus Technical University College -

Assignment Brief (RQF)


Higher National Diploma in computing
Language of
AR EN
assessment
Student Name
College ID:
Pearson ID:
Unit Number and Title 1. Programming
Academic Year 2022/2023
Unit Tutor Zaina Yousef, Maisa Halloush, Bayan Alfayoumi, Ahmad Amro
Internal Verifier Name Safaa Bani Essa Approval Date:
and Approval
(Signature)
Assignment number and 1 Programming paradigms and concepts
Title
Issue Date (1St 16th/12/2023 Submission Date 20th/1/2024
Submission) (1st Submission)
Issue Date (2nd Completion Date
Submission) (2nd Submission)
Submission Format
Submission: Code file, word document at least 1000 words.

Word file format: use consistent style and formatting. Use Times New Roman Font type, with 12 points,
and single spacing. Effectively use headings and paragraphs. Number any type of illustrations (figures and
tables) and refer to them inside your document.

Authenticity: Your proposed work should be authentic, and copied from others. your answers have to relate
to the vocational scenario and not generally. If you use ideas, quotes or data (such as diagrams) from books,
journals or other sources, you must reference your sources, using the Harvard style.

Unit Learning Outcomes


Define basic algorithms to carry out an operation and outline the process of
LO1
programming an application
Explain the characteristics of procedural, object orientated and event-driven
LO2 programming

LO3 Implement basic algorithms in code using an IDE


Determine the debugging process and explain the importance of a coding
LO4
standard

Transferable skills and competencies developed

Problem-solving techniques, Report writing, Implementation/coding using JAVA


GUI design, learn different programming paradigms.

Vocational scenario:
You have been hired as a trainee in the software development department at Rawhi
Pharmacy, which is working on a project that provides management over drugs in
pharmacy stores. Your assignment is to develop a software application that allows
pharmacists to perform several controls on drugs. As you progress through tasks, system
specifications shall be met. Your code must be clean, consistent, and follow code
standards. Your team leader has provided you with the following specifications about the
system that you should implement:

The system primarily revolves around drug management, featuring various


attributes for each drug, such as a unique ID, the quantity available in stores, its
expiry date, and production date. Additionally, every drug is identified by two
names: a commercial name, known to the general public, and a scientific name,
recognized by pharmacists and individuals specialized in the medical field.

The system's functionalities encompass the following:


1. Pharmacist Operations:
- Verification of drug expiry dates and availability.
- Ability to update the quantity of a drug when it is sold or restocked.
- Search functionality for drug alternatives by providing a list of commercial
names and their corresponding scientific names. The system should return the
commercial name of the alternative drug.
2. Data Security Measures:
- Implementation of information hiding to safeguard sensitive data within the
system.
By adhering to these specifications, the system aims to streamline drug
management for pharmacists while ensuring the confidentiality of sensitive
information.
‫ التي تعمل على تطوير مشروع إلدارة األدوية‬،‫لقد تم تعيينك كمتدرب في قسم تطوير البرمجيات في صيدلية روحي‬
‫ سيتم‬.‫ مهمتك تقتضي بتطوير برمجية تسمح للصيادلة بإجراء العديد من عمليات التحكم على األدوية‬.‫داخل المستودعات‬
‫ يجب أن يكون الكود الخاص بك متسق ويتبع‬.‫تحقيق أهداف النظام خالل انجازك للمهمات المذكورة في هذا الواجب‬
‫معايير كتابة الكود كما يجب ان يكون نظيف‬.
‫لمساعدتك على البدء في مهمتك‘قدم لك رئيس الفريق مواصفات النظام التالية التي يجب عليك تنفيذها‬:

‫ والكمية المتاحة في‬،‫ مثل الرقم التعريفي‬،‫ حيث يتميز بسمات متنوعة لكل دواء‬،‫النظام يدور أساًسا حول إدارة األدوية‬
‫ االسم‬:‫ يتم التعرف على كل دواء بواسطة كل من‬،‫ باإلضافة إلى ذلك‬.‫ وتاريخ اإلنتاج‬،‫ وتاريخ انتهاء الصالحية‬،‫المتاجر‬
‫ المعترف به من قبل الصيادلة واألفراد المتخصصين في المجال‬،‫ واالسم العلمي‬،‫ المعروف للجمهور العام‬،‫التجاري‬
.‫الطبي‬
‫تشمل وظائف النظام التالية‬
:‫عمليات الصيدلي‬1-
.‫ التحقق من تواريخ انتهاء الصالحية لألدوية وتوافرها‬-
.‫ القدرة على تحديث كمية الدواء عند بيعه أو إعادة تخزينه‬-
‫ يجب‬.‫ وظيفة البحث عن بدائل األدوية عن طريق تقديم قائمة باألسماء التجارية وأسمائها العلمية المقابلة‬-
.‫على النظام إرجاع االسم التجاري للدواء البديل‬
:‫ تدابير أمان البيانات‬2-
‫ يهدف‬،.‫) لحماية البيانات الحساسة داخل النظام‬information hiding( ‫ تنفيذ إجراءات إخفاء المعلومات‬-
.‫النظام إلى تبسيط إدارة األدوية للصيادلة مع ضمان سرية المعلومات الحساسة‬

Assignment activity and guidance

Task 1: Defining the basic algorithm of your code

As a preliminary step in your development process, you have been assigned the task of
investigating the process of developing a suitable algorithm for the primary method of your
code. Additionally, you have been tasked with presenting an appropriate process to follow
during the development phase.

1- Specify what an algorithm means and provide a representation for an algorithm that
you are going to implement in searching for commercial alternative drug, which
was described in the vocational scenario, using a pseudo code or flowchart.
2- To develop your application, you need to go through various stages from planning
to execution. Outline the primary stages that you should include to build your
application.
3- Identify the steps that are taken from writing code to execution and investigate the
challenges that you may face in writing your code.
4- Assess the implementation of the algorithm that you have suggested in the previous
task using a suitable programming language, considering the relationship between
the proposed algorithm and the code version to be implemented.

‫ تحديد الخوارزمية األساسية للكود الخاصة بك‬:1 ‫المهمة‬

‫ باإلضافة‬.،‫ تم تكليفك بمهمة التحقيق في عملية تطوير خوارزمية مناسب‬،‫كخطوة أولية في عملية التطوير الخاصة بك‬
‫ تم تكليفك بتقديم عملية مناسبة التباعها أثناء مرحلة التطوير‬،‫إلى ذلك‬.

1- ‫ كما وصفت في‬،‫عرف الخوارزمية وقدم تمثياًل للخوارزمية التي تنوي تنفيذها في عملية البحث عن دواء بديل‬
pseudo code‫ او‬flowchart‫ باستخدام‬،‫السيناريو السابق‬
‫ثم عرف الخطوات األساسية التي يتم اتباعها في تطوير البرمجيات لتصميم نظام بالكامل‬.
2- ‫ حدد هذه الخطوات مع شرحها‬.‫ عليك القيام بعدة مهمات والتي تبدأ من التخطيط روتنتهي بالتنفيذ‬،‫لتطوير برنامجك‬.
3- ‫عرف الخطوات التي يتم اتباعها من كتابة الكود الى التنفيذ واذكر التحديات التي قد تواجهك خالل كتابة الكود‬.
4- ‫ مع مراعاة العالقة بين‬،‫قّيم تنفيذ الخوارزمية التي اقترحتها في المهمة السابقة باستخدام لغة برمجة مناسبة‬
‫الخوارزمية المقترحة الكود الذي سيتم تنفيذه‬
Task 2: Studying the characteristics of different programming styles

Now, you should start studying and analysing the characteristics of different programming
styles. To speed up the process, your team leader got three offers from three different
outsourcing companies for drug’s availability method. Based on your study of the source
codes, you are asked to prepare a research that covers the following:

1- Consider the programming paradigms (Procedural programming, Object-Oriented


Programming, Event-Driven Programming) by defining and outlining the
characteristics of each paradigm, and show by example the structure of each
paradigm and how they are related to each other.
2- The following attachments are the source code of the offers. Each company offered
implementing the code using different programming paradigm. Compare in a table
between the different paradigms by referring to the source code in terms of:
a- Scalability (the ease of adding additional features for drugs)
b- Readability
c- Domain of applicability
d- Reusability
e- Organization of code

Offer 1: PP Offer 2: OOP Offer 3: Event-Driven


Programming

3- Criticize the previous source codes of the three paradigms in terms of the code
structure and characteristics and choose the best programming paradigm that
fits to the scope of the problem.

‫ دراسة خصائص أساليب البرمجة المختلفة‬:2 ‫المهمة‬

‫ حصل قائد فريقك على‬،‫ لتسريع العملية‬.‫ يجب أن تبدأ في دراسة وتحليل خصائص أساليب البرمجة المختلفة‬،‫اآلن‬
.‫ثالث عروض من ثالث شركات مختلفة لبناء الكود الخاص بعملية االستفسار عن توفر الدواء في المستودعات‬
‫ طلب منك اجراء دراسة تغطي ما يلي‬،‫بعد دراستك لهذه األكواد‬:
Procedural programming, Object-Oriented Programming,( ‫بالنظر إلى األساليب البرمجية‬ -1
‫ وأظهر بواسطة‬،‫) قم بتحديد وتوضيح خصائص كل أسلوب برمجي‬Event-Driven Programming
.‫أمثلة الهيكل لكل أسلوب وكيفية ارتباطها ببعضها البعض‬
‫ قامت كل شركة بتقديم كودها‬.‫الملفات المرفقة أعاله تحتوي على األكواد من الثالث شركات الالتي تم ذكرهم‬ -2
:‫قم بمقارنة األكواد من حيث ما يلي‬.‫باستخدام أسلوب برمجة مختلف‬
)‫التوسعية (سهولة إضافة ميزات إضافية لألدوية‬ .a
‫قابلية القراءة‬ .b
‫مجال التطبيق‬ .c
‫القابلية إلعادة االستخدام‬ .d
‫تنظيم الكود‬ .e

‫ واختر األسلوب البرمجي‬،‫قدم نقًدا لألكواد السابقة لألساليب الثالثة من حيث هيكل الشيفرة والخصائص‬ -3
.‫األفضل الذي يناسب نطاق المشكلة‬

Task 3: Implementing and debugging the code


Now it is implementation time. Based on the study you conducted in previous tasks, you
will be requested to choose an appropriate IDE and begin working on your code.
Furthermore, you will be tasked to go through the debugging process to ensure that your
code is free from errors and defects.

1- Choose the IDE that you want to use and implement the Drug system using the
program paradigm that you recommend. Make sure to follow the coding standards.
2- Make clear what coding standard have you used by providing at least three
screenshots showing examples from your code of how you applied code standards.
Additionally, critically assess the importance of following coding standards for
you as an individual and for your team.
3- Enhance your implementation of search_for_replacement method by using unit
profiling tool feature on your IDE. Provide screenshots from the tool that shows
how did the tool helped you in implementing the algorithm.
4- Assess the implementation process of your program using an IDE, emphasizing the
features that facilitated the development process. Support your answer with
evidence, including at least three screenshots showcasing the features that you used
with the help of IDEs. Furthermore, provide an accurate comparison and contrast
between coding using an IDE and using text editors, highlighting the advantages
and disadvantages of each one.
5- Specify what debugging means and explain the debugging features presented by the
IDE you chose for your implementation. After that, debug your code and
demonstrate how the IDE assisted you in the process by providing clear and
appropriate screenshot(s).
6- Analyse the importance of applying the debugging process on your source code,
illustrating its effect on the robustness and security of your application.

‫ سُيطلب منك اختيار برنامج تطويرمناسب‬،‫ بناًء على الدراسة التي أجريتها في المهام السابقة‬.‫اآلن حان وقت التنفيذ‬
‫ ستقوم بالمرو بعملية تصحيح األخطاء لضمان أن شيفرتك خالية من‬،‫ عالوة على ذلك‬.‫والبدء في العمل على شيفرتك‬
.‫األخطاء والعيوب‬
‫) الذي ترغب باستخدامه وقم ببناء الكود الخاص بنظام األدوية باستخدام‬IDE( ‫قم باختيار برنامج التطوير‬-1
.‫ احرص على اتباع قواعد كتابة األكواد‬.‫اسلوب البرمجة الذي قمت بالتوصية به‬
‫ قم بتوضيح معايير كتابة البرمجة التي قمت باتباعها من خالل ارفاق ثالث لقطات شاشة على األقل من‬-2
.‫كود الخاص بك تبين المعايير التي استخدمتها وبين أهمية اتباع هذه المعايير لألفراد والمجموعات‬
‫ المتاحة‬profiling ‫قم باجراء تحسين على خوارزميتك الخاصة بالبحث عن دواء بديل باستخدام أداة ال‬-3
.‫ ارفق لقطات شاشة من االداة توضح كيف مكنتك من التحسن على الكود‬.‫على برنامجك‬
‫ قم بدعم إجابتك‬.‫ ُم شِّدًدا على الميزات التي سَّهلت عملية التطوير‬،)IDE( ‫قِّيم عملية تنفيذ برنامجك باستخدام‬ -4
.‫ بما في ذلك ثالثة على األقل لقطات شاشة ُتظِه ر الميزات التي استخدمتها بمساعدة بيئات التطوير‬،‫بأدلة‬
‫ قدم مقارنة وتباين دقيق بين كتابة الشيفرة باستخدام بيئة تطوير متكاملة واستخدام محررات‬،‫عالوة على ذلك‬
.‫ ُم سِّلًطا الضوء على مزايا وعيوب كل منهما‬،‫النصوص‬
‫)التي اخترتها لتنفيذ‬IDE( ‫ واشرح الميزات التي يقدمها بيئة التطوير المتكاملة‬debugging ‫حدد معنى‬ -5
‫ قم بتصحيح شيفرتك وأظهر كيف ساعدتك بيئة التطوير المتكاملة في هذه العملية عبر تقديم‬،‫ بعد ذلك‬.‫شيفرتك‬
.‫لقطة شاشة واضحة ومناسبة‬
‫ موضًح ا تأثيرها على قوة وأمان‬،‫على الكود الخاص بك‬debugging ‫قم بتحليل أهمية تطبيق عملية ال‬ -6
‫التطبيق‬

Recommended Resources
Please note that the resources listed are examples for you to use as a starting
point in your research – the list is not definitive.
Textbooks

Paul J. Deitel; Harvey Deitel. (2017). Java How to Program, Early Objects, 11th Edition.
ISBN-13: 978-0-13-475196-2.

Learning Outcomes and Assessment Criteria


Pass Merit Distinction
LO1 Define basic algorithms to carry out an operation and outline the D1 Evaluate the implementation of an
process of programming an application algorithm in a suitable language and the
relationship between the written
P1 Provide a definition of what M1 analyse the process of writing
algorithm and the code variant.
an algorithm is and outline the code, including the potential
process in building an challenges faced.
application.
P2 Determine the steps taken
from writing code to execution.
LO2 Explain the characteristics of procedural, object orientated and D2 Critically evaluate the source code
event-driven programming of an application which implements the
P3 Discuss what procedural, M2 Compare the procedural, object procedural, object-orientated
object orientated and event orientated and event driven and event driven paradigms,
driven paradigms are; their paradigms used in given source code in terms of the code structure
characteristics and the of an application. and characteristics.
relationship between them.
LO3 Implement basic algorithms in code using an IDE D3 Evaluate the use of an IDE for
P4 Write a program that M3 Enhance the algorithm written, development of applications contrasted
implements an algorithm using an using the features of IDE to manage with not using an IDE.
IDE. the development process.
LO4 Determine the debugging process and explain the importance of a D4 Critically evaluate why a coding
coding standard standard is necessary in a team as well
P5 Explain the debugging process M4 Evaluate how the debugging as for the individual.
and the debugging facilities process can be used to help develop
available in the IDE. more secure, robust applications

P6 Explain the coding standard


you have used in your code.

You might also like