Software Engineering Project: SDLC, Design, and Evaluation Report
VerifiedAdded on 2023/01/13
|25
|6367
|99
Project
AI Summary
This project report, focused on the principles of software engineering, explores the importance of software development within an organization, using Hastings Dental Health Care as a case study. It details the Software Development Life Cycle (SDLC) and its methods, including use case models, class design, and sequence diagrams, while also addressing associated challenges. The report emphasizes the critical role of software development in organizational growth, covering aspects like encapsulation, abstraction, and inheritance in software design. The project includes a critical evaluation of the SDLC and software development challenges, concluding with the significance of software development for overall organizational advancement.
Contribute Materials
Your contribution can guide someone’s learning journey. Share your
documents today.

Module Title: Principles of Software Engineering
Words 4000
Coursework Title: Project
PRINCIPLES OF SOFTWARE ENGINEERING
1
Words 4000
Coursework Title: Project
PRINCIPLES OF SOFTWARE ENGINEERING
1
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.

Executive Summary
This report is all about the principles of Software Engineering. Importance of software
development within an organization has been discussed here. An organization named as Hastings
dental health care has been taken into account and how this organization have used this newly
developed software for its betterment that has been described. Software development life cycle
along with all methods has been discussed and the challenges that need to be faced during a
software development, has been described. Finally, this report has been concluded that
importance of software development in an organization is very crucial for that overall
organizational development.
2
This report is all about the principles of Software Engineering. Importance of software
development within an organization has been discussed here. An organization named as Hastings
dental health care has been taken into account and how this organization have used this newly
developed software for its betterment that has been described. Software development life cycle
along with all methods has been discussed and the challenges that need to be faced during a
software development, has been described. Finally, this report has been concluded that
importance of software development in an organization is very crucial for that overall
organizational development.
2

Table of Contents
Component 1: Software design and project prototype...................................................................4
Case model...................................................................................................................................4
Class design..................................................................................................................................4
Sequential diagram.....................................................................................................................10
Component 2: Critical-Evaluation.................................................................................................14
Introduction................................................................................................................................14
SDLC.........................................................................................................................................14
Software Development and its Challenges................................................................................18
Conclusion.....................................................................................................................................20
Reference list.................................................................................................................................21
3
Component 1: Software design and project prototype...................................................................4
Case model...................................................................................................................................4
Class design..................................................................................................................................4
Sequential diagram.....................................................................................................................10
Component 2: Critical-Evaluation.................................................................................................14
Introduction................................................................................................................................14
SDLC.........................................................................................................................................14
Software Development and its Challenges................................................................................18
Conclusion.....................................................................................................................................20
Reference list.................................................................................................................................21
3

Part 1: Software design and project prototype
Use Case model
Actors and associations
There are 6 doctors in Hastings Dental Care House along with 2 administrators, 2 drivers,
reception staff and a manager. All the employees work on a full-time basis while the drivers
work as a freelance.
Inheritance
Doctors can view the patient’s treatment history. The administrative department is responsible
for booking and cancellation of appointments; they can also appoint another doctor in case the
said doctor is not available. Manger makes necessary arrangements for surgery, medicines and
also maintains record of the availability of tools.
Case documentation
The hospital will be open from Monday to Friday where 44 patients can be accommodated
except Friday where only 22 patients will be accepted. Name and contact details of new
customers should be taken along with other details. Patients need to pay a sum of £10 to confirm
the appointment which is refundable if it is cancelled before 24 hours.
Use Case Use case of hasting dental new system.
Actor Admin
Staff
Patient
Description It represents functionalities of patients, admin
and staff members before appointment
booking.
Patient uses new system to book slot for
appointment.
Flow of Events Patient login to the system and book
slot for appointment
Patient enter their details for
appointment
4
Use Case model
Actors and associations
There are 6 doctors in Hastings Dental Care House along with 2 administrators, 2 drivers,
reception staff and a manager. All the employees work on a full-time basis while the drivers
work as a freelance.
Inheritance
Doctors can view the patient’s treatment history. The administrative department is responsible
for booking and cancellation of appointments; they can also appoint another doctor in case the
said doctor is not available. Manger makes necessary arrangements for surgery, medicines and
also maintains record of the availability of tools.
Case documentation
The hospital will be open from Monday to Friday where 44 patients can be accommodated
except Friday where only 22 patients will be accepted. Name and contact details of new
customers should be taken along with other details. Patients need to pay a sum of £10 to confirm
the appointment which is refundable if it is cancelled before 24 hours.
Use Case Use case of hasting dental new system.
Actor Admin
Staff
Patient
Description It represents functionalities of patients, admin
and staff members before appointment
booking.
Patient uses new system to book slot for
appointment.
Flow of Events Patient login to the system and book
slot for appointment
Patient enter their details for
appointment
4
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.

Admin record all the details of the
patients for appointment
Patient choose payment option for
payment in order to book appointment.
Use case Diagram
Class design
Class design is also known as structural diagram and provides the static layout of an application.
Class diagram is static in nature; it is applied in the visualization process, descriptions and
documenting of different aspects of a particular system along with the construction and
executing of codes of the application.
Class diagram defines the attributes and operation present in the class and the restriction
implemented the system (Jackson, 2017, p.185). Class diagrams are widely used in the designing
of object-oriented programming as they are the only UML diagrams that can be linked directly to
object-oriented systems.
5
patients for appointment
Patient choose payment option for
payment in order to book appointment.
Use case Diagram
Class design
Class design is also known as structural diagram and provides the static layout of an application.
Class diagram is static in nature; it is applied in the visualization process, descriptions and
documenting of different aspects of a particular system along with the construction and
executing of codes of the application.
Class diagram defines the attributes and operation present in the class and the restriction
implemented the system (Jackson, 2017, p.185). Class diagrams are widely used in the designing
of object-oriented programming as they are the only UML diagrams that can be linked directly to
object-oriented systems.
5

Class Diagram
6
6

Fig 1: Case diagram and coding
Class diagram depicts classes, collaborations, associations, interfaces and constraints.
Purpose of Class diagrams
Purpose of class diagram is to provide the basic structure and static representation of a particular
application. Class diagrams are the only UML diagrams that can be directly linked with object-
oriented programming and hence are popularly used for the program designing (Sciore, 2019,
p.46). UML diagrams like sequence diagram provide a flow chart but class diagrams are a bit
different and its features are described below.
● Designing and analyzing the static view of a particular application.
● Defining system responsibilities
● Basics for component and deployment diagrams.
Process
Class diagrams are one of the most popularly used UML languages since it can be directly linked
to object-oriented programming and hence it is essential to learn the drawing procedure of class
diagrams (Santos and Coelho, 2016, p.284). Class diagrams graphically represent the static view
of the entire system and critically describe different aspects of the system. Before the
construction of a class diagram, the following aspects must be considered.
● The class diagram should be assigned with an appropriate title which will describe the
purpose and aspects of a system meaningfully.
● Each and every element should be described clearly and its relationships should be
established.
● Attributes and methods of all the classes should be identified clearly.
● Details of properties should be specified clearly for each class and unnecessary
complications should be avoided.
● Proper labeling of the diagram should be done so that the developer can easily understand
(Vega-Gisbert, et al. 2016, p.20). Notes must be added whenever required to describe that
step in brief.
● The diagram should be drawn on plain paper in order to make corrections as many times
as possible, before designing the final version of the diagram.
7
Class diagram depicts classes, collaborations, associations, interfaces and constraints.
Purpose of Class diagrams
Purpose of class diagram is to provide the basic structure and static representation of a particular
application. Class diagrams are the only UML diagrams that can be directly linked with object-
oriented programming and hence are popularly used for the program designing (Sciore, 2019,
p.46). UML diagrams like sequence diagram provide a flow chart but class diagrams are a bit
different and its features are described below.
● Designing and analyzing the static view of a particular application.
● Defining system responsibilities
● Basics for component and deployment diagrams.
Process
Class diagrams are one of the most popularly used UML languages since it can be directly linked
to object-oriented programming and hence it is essential to learn the drawing procedure of class
diagrams (Santos and Coelho, 2016, p.284). Class diagrams graphically represent the static view
of the entire system and critically describe different aspects of the system. Before the
construction of a class diagram, the following aspects must be considered.
● The class diagram should be assigned with an appropriate title which will describe the
purpose and aspects of a system meaningfully.
● Each and every element should be described clearly and its relationships should be
established.
● Attributes and methods of all the classes should be identified clearly.
● Details of properties should be specified clearly for each class and unnecessary
complications should be avoided.
● Proper labeling of the diagram should be done so that the developer can easily understand
(Vega-Gisbert, et al. 2016, p.20). Notes must be added whenever required to describe that
step in brief.
● The diagram should be drawn on plain paper in order to make corrections as many times
as possible, before designing the final version of the diagram.
7
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

Class design consists of several aspects which are described below.
● Firstly order and customers are recognized as the two aspects of a particular system. They
are associated with a one too many relationships due to the fact that a customer can opt
for multiple orders.
● Order class is a hypothetical class which consists of two concrete classes which are
Special order and Normal order.
● These two inherited classes contain all the aspects of an order class. Apart from that they
have functions like dispatch () and receive ().
Applications
● Description of a static view of a system
Class diagram is used for designing the static structure or vocabulary of a particular
system.
● Explaining the relation amongst the elements
Class diagram is the basis of component diagrams. Class diagrams are used to monitor
the static angle of a system but they are also used for developing the structure and code
for to and fro engineering approach of a particular system.
● Explaining different functionalities of a system
Class diagrams stand apart from other UML diagrams as it can be directly linked with
object-oriented programming languages such as Java, C++ etc.
● Designing and development of software programs using object-oriented platforms such as
Java and C++.
Encapsulation
Encapsulation is restricting the access a particular member of the class from outside the class.
This can be done by declaring those members as private members which will not be accessed
from members of other classes (Hong, et al. 2017, p.11). These members can be accessed by
using public functions of the same class only which can be called from anywhere outside the
class. This is also referred to as data hiding as data of a particular class is hidden from outside
access.
8
● Firstly order and customers are recognized as the two aspects of a particular system. They
are associated with a one too many relationships due to the fact that a customer can opt
for multiple orders.
● Order class is a hypothetical class which consists of two concrete classes which are
Special order and Normal order.
● These two inherited classes contain all the aspects of an order class. Apart from that they
have functions like dispatch () and receive ().
Applications
● Description of a static view of a system
Class diagram is used for designing the static structure or vocabulary of a particular
system.
● Explaining the relation amongst the elements
Class diagram is the basis of component diagrams. Class diagrams are used to monitor
the static angle of a system but they are also used for developing the structure and code
for to and fro engineering approach of a particular system.
● Explaining different functionalities of a system
Class diagrams stand apart from other UML diagrams as it can be directly linked with
object-oriented programming languages such as Java, C++ etc.
● Designing and development of software programs using object-oriented platforms such as
Java and C++.
Encapsulation
Encapsulation is restricting the access a particular member of the class from outside the class.
This can be done by declaring those members as private members which will not be accessed
from members of other classes (Hong, et al. 2017, p.11). These members can be accessed by
using public functions of the same class only which can be called from anywhere outside the
class. This is also referred to as data hiding as data of a particular class is hidden from outside
access.
8

Abstraction
Data abstraction is defined as property by virtue of which only some selective and relevant
information is shown to the user and certain irrelevant and less important issues are hidden from
the users to avoid complexities (Robillard, 2019, p.237). For instance, only the name of a product
is displayed and not the entire specifications and manufacturing information. Data abstraction
can also be defined as the identification of only relevant information and not ignoring the less
important and irrelevant information.
Abstraction Encapsulation
Abstraction is a method to gain information Encapsulation is a method to protect
information
Here problems are addressed at designing
level
Here issues are resolved in the execution
level.
Abstraction is a process of hiding unnecessary
information
Encapsulation is a process to protect
information under a class and restricting its
access from outside.
Abstraction can be implemented using
abstract class and interface.
Encapsulation can be implemented bt
classifying necessary members into public,
private and protected members(da Silva, et al.
2015, p.110)
.
Abstract class and interface are also used to
avoid complexities.
Here getters and setters method is used to
resolve complexities.
Objects used for performing abstraction are
encapsulated.
Objects that are supposed to be encapsulated
should be abstracted.
Table 1: Abstraction and encapsulation
9
Data abstraction is defined as property by virtue of which only some selective and relevant
information is shown to the user and certain irrelevant and less important issues are hidden from
the users to avoid complexities (Robillard, 2019, p.237). For instance, only the name of a product
is displayed and not the entire specifications and manufacturing information. Data abstraction
can also be defined as the identification of only relevant information and not ignoring the less
important and irrelevant information.
Abstraction Encapsulation
Abstraction is a method to gain information Encapsulation is a method to protect
information
Here problems are addressed at designing
level
Here issues are resolved in the execution
level.
Abstraction is a process of hiding unnecessary
information
Encapsulation is a process to protect
information under a class and restricting its
access from outside.
Abstraction can be implemented using
abstract class and interface.
Encapsulation can be implemented bt
classifying necessary members into public,
private and protected members(da Silva, et al.
2015, p.110)
.
Abstract class and interface are also used to
avoid complexities.
Here getters and setters method is used to
resolve complexities.
Objects used for performing abstraction are
encapsulated.
Objects that are supposed to be encapsulated
should be abstracted.
Table 1: Abstraction and encapsulation
9

(Source: Coblenz, et al. 2017, p.496)
Inheritance
Inheritance is an essential component which is used in Object-oriented programming. This is a
feature by which the members of a particular class are allowed to inherit data from other class.
Inheritance can be classified into different types which are mentioned below.
● Single inheritance-Here subclasses inherit the features of one super class (Harris, et al.
2019, p.1). The class which inherits is known as a subclass or derived class while the
class from which the information is inherited is referred to as super class or base class.
● Multilevel inheritance- Here a derived class inherits from a base class which in turn as a
base class for other derived classes, forming a multi-level chain.
● Hierarchical inheritance- Here more than one derived class inherits from a single base
class at the same time.
● Multiple inheritances- Here a single subclass inherits from more than one super class.
Hence the derived class contains the properties of all the base classes. Multiple
inheritances can be implemented in java using interfaces.
● Hybrid inheritance- When more than one of the above-mentioned types of inheritance are
implemented at the same time than it is referred to as hybrid inheritance. Implementation
of hybrid inheritance in Java is also done using interfaces.
Inheritance in Java
● Every class is directly related to only one super class referred to as single inheritance.
● Super classes can have more than one subclass but subclasses cannot have more than one
super class. This is due to the fact that Java does not allow multiple inheritances at a time
with classes. But these multiple inheritances in Java are implemented through an
interface.
● Subclasses can inherit all the members of the super class but bit cannot inherit
constructors, but these constructors can be called from these subclasses.
10
Inheritance
Inheritance is an essential component which is used in Object-oriented programming. This is a
feature by which the members of a particular class are allowed to inherit data from other class.
Inheritance can be classified into different types which are mentioned below.
● Single inheritance-Here subclasses inherit the features of one super class (Harris, et al.
2019, p.1). The class which inherits is known as a subclass or derived class while the
class from which the information is inherited is referred to as super class or base class.
● Multilevel inheritance- Here a derived class inherits from a base class which in turn as a
base class for other derived classes, forming a multi-level chain.
● Hierarchical inheritance- Here more than one derived class inherits from a single base
class at the same time.
● Multiple inheritances- Here a single subclass inherits from more than one super class.
Hence the derived class contains the properties of all the base classes. Multiple
inheritances can be implemented in java using interfaces.
● Hybrid inheritance- When more than one of the above-mentioned types of inheritance are
implemented at the same time than it is referred to as hybrid inheritance. Implementation
of hybrid inheritance in Java is also done using interfaces.
Inheritance in Java
● Every class is directly related to only one super class referred to as single inheritance.
● Super classes can have more than one subclass but subclasses cannot have more than one
super class. This is due to the fact that Java does not allow multiple inheritances at a time
with classes. But these multiple inheritances in Java are implemented through an
interface.
● Subclasses can inherit all the members of the super class but bit cannot inherit
constructors, but these constructors can be called from these subclasses.
10
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.

● Subclasses can also not inherit private members but these private members can be
assessed by the help of public and protected members of the super class.
Sequential diagram
Sequence diagrams are also referred to as an event diagram or sequence since these diagrams
describe interrelations between objects in a sequential order which is the order in which the
interlinking takes place (Marchant, et al. 2015, p.2879). These diagrams depict the process as
well as the sequence in which the interaction takes place. These diagrams find a wide range of
applications in business purposes, software development, designing of documents and
identifying requirements.
Common terms
1. Actors- Actor represents the nature of role of the object at the site of interaction with the
system. Here actor is always outside the system and which is aimed to be designed using the
UML model. Actors are used to depicting several roles including human beings and several other
external interfaces. There can be more than one actors in a sequential diagram.
11
assessed by the help of public and protected members of the super class.
Sequential diagram
Sequence diagrams are also referred to as an event diagram or sequence since these diagrams
describe interrelations between objects in a sequential order which is the order in which the
interlinking takes place (Marchant, et al. 2015, p.2879). These diagrams depict the process as
well as the sequence in which the interaction takes place. These diagrams find a wide range of
applications in business purposes, software development, designing of documents and
identifying requirements.
Common terms
1. Actors- Actor represents the nature of role of the object at the site of interaction with the
system. Here actor is always outside the system and which is aimed to be designed using the
UML model. Actors are used to depicting several roles including human beings and several other
external interfaces. There can be more than one actors in a sequential diagram.
11

Fig 2: Sequence diagram
2. Lifelines
Lifeline is a named element representing an individual element in a sequence diagram. Hence3
every instance of a sequential diagram is actually presented by a lifeline. These are placed at the
top of sequential diagrams. Lifelines are displayed in rectangular boxes which are referred top as
head and it contains information about its name and type. This head is placed at the top of the
sequential diagram. Lifeline basically depicts an object which is internal to the system while
actors are used for representing objects which are external to them.
3. Messages
Communication between different objects is established using messages. Messages appear in the
lifeline sequentially on the basis of its order. These messages are denoted using arrows. These
12
2. Lifelines
Lifeline is a named element representing an individual element in a sequence diagram. Hence3
every instance of a sequential diagram is actually presented by a lifeline. These are placed at the
top of sequential diagrams. Lifelines are displayed in rectangular boxes which are referred top as
head and it contains information about its name and type. This head is placed at the top of the
sequential diagram. Lifeline basically depicts an object which is internal to the system while
actors are used for representing objects which are external to them.
3. Messages
Communication between different objects is established using messages. Messages appear in the
lifeline sequentially on the basis of its order. These messages are denoted using arrows. These
12

messages and lifelines together form the core of the sequence diagram. Messages are broadly
classified into two types which are mentioned below.
Synchronous message
Here sender sends a message to the receiver and waits for their reply. Once the sender is
confirmed that the receiver has received the message, processed in and sent a reply only the
sender foes for another message most of the messages in object-oriented programming is
synchronous messages these messages are denoted by a solid arrow.
Asynchronous message
Here the sender doesn’t wait for recovers response but it continues to transmit its message. These
messages are denoted by a dotted arrow.
Create message
Create message is used for the creation of new objects in a sequence diagram while in a
conversation (Stahl, et al. 2016, p.55). There are some situations in which a new object needs to
be created while communicating via messages; these are denoted by dotted arrows.
Delete message
Delete message is used to delete an object. Deletion of an object leads to the destruction of the
memory allocated to that object. Further occurrence of that object is also destroyed since its
memory allocation is released. This is depicted by an arrow ending with a cross symbol.
Self massage
There are certain situations in which the object needs to send information or message to itself
which is referred to as a self message and is represented by a U shaped arrow.
Reply message
After the message is sent by a sender, this message is processed and a reply is sent back to the
receiver which is known as reply message. These are denoted by a solid arrow followed by a
dotted line and this arrow moves forward only when the receiver sends a reply.
Found message
The found message is referred to as the situation when there is a message from an unknown
source. This is represented by an arrow directed towards a lifeline.
Lost message
This is the situation when the system cannot recognize the receiver of the message. This is
denoted by an arrow directed towards an endpoint of a lifeline.
13
classified into two types which are mentioned below.
Synchronous message
Here sender sends a message to the receiver and waits for their reply. Once the sender is
confirmed that the receiver has received the message, processed in and sent a reply only the
sender foes for another message most of the messages in object-oriented programming is
synchronous messages these messages are denoted by a solid arrow.
Asynchronous message
Here the sender doesn’t wait for recovers response but it continues to transmit its message. These
messages are denoted by a dotted arrow.
Create message
Create message is used for the creation of new objects in a sequence diagram while in a
conversation (Stahl, et al. 2016, p.55). There are some situations in which a new object needs to
be created while communicating via messages; these are denoted by dotted arrows.
Delete message
Delete message is used to delete an object. Deletion of an object leads to the destruction of the
memory allocated to that object. Further occurrence of that object is also destroyed since its
memory allocation is released. This is depicted by an arrow ending with a cross symbol.
Self massage
There are certain situations in which the object needs to send information or message to itself
which is referred to as a self message and is represented by a U shaped arrow.
Reply message
After the message is sent by a sender, this message is processed and a reply is sent back to the
receiver which is known as reply message. These are denoted by a solid arrow followed by a
dotted line and this arrow moves forward only when the receiver sends a reply.
Found message
The found message is referred to as the situation when there is a message from an unknown
source. This is represented by an arrow directed towards a lifeline.
Lost message
This is the situation when the system cannot recognize the receiver of the message. This is
denoted by an arrow directed towards an endpoint of a lifeline.
13
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

4. Guards
Guards are used in UML to put a restriction on the flow of messages when it is not necessary
(Spadini, et al. 2019, p.1461). Guards play an important role by educating its employees about
restrictions associated with a particular process or system.
14
Guards are used in UML to put a restriction on the flow of messages when it is not necessary
(Spadini, et al. 2019, p.1461). Guards play an important role by educating its employees about
restrictions associated with a particular process or system.
14

Part 2: Critical-Evaluation
Introduction
This report is all about the principles of software engineering. Importance of software
development within an organization is increasing day by day. Any organization should develop
new software in order to maintain a sustainable growth. This new developed software helps an
organization in keeping all required data in an organized way. There are various ways or
methods that are available to develop such software. Selection of the right method for developing
software is very crucial and that needs to be identified first before processing for the software
development. There are some unwanted issues also but that need to be solved with the help of
this software as early as possible.
SDLC
SDLC stands for software development life cycle which is used in software companies to create
and examine complicated software. Their main objectives are to meet customer demands and in
some cases exceed customer demands, finish their work within the given time and take care of
the cost of production (Yuan, et al. 2019, p.3). SDLC consists of a process followed in a
software firm; it consists of designing and development procedure, methods of maintenance, and
replacement details. These details are essential to upgrade the software in future and enhance its
development process.
15
Introduction
This report is all about the principles of software engineering. Importance of software
development within an organization is increasing day by day. Any organization should develop
new software in order to maintain a sustainable growth. This new developed software helps an
organization in keeping all required data in an organized way. There are various ways or
methods that are available to develop such software. Selection of the right method for developing
software is very crucial and that needs to be identified first before processing for the software
development. There are some unwanted issues also but that need to be solved with the help of
this software as early as possible.
SDLC
SDLC stands for software development life cycle which is used in software companies to create
and examine complicated software. Their main objectives are to meet customer demands and in
some cases exceed customer demands, finish their work within the given time and take care of
the cost of production (Yuan, et al. 2019, p.3). SDLC consists of a process followed in a
software firm; it consists of designing and development procedure, methods of maintenance, and
replacement details. These details are essential to upgrade the software in future and enhance its
development process.
15

Figure 3: SDLC stages
(Source: Jeon, et al. 2015, p.937)
The process involved in the Software development lifecycle consists of the following steps
Stage 1: Planning and requirement analysis
This is the fundamental process which is performed by senior members of the company as it
required some crucial decision making. Data and information are collected from customer’s end
which is then processed by various departments of the company to give their analysis. This
analysis consists of ways of approach, cost-effectiveness, risks and marketing trends etc. This
analysis is generally based on economic surveys, operation research and technological trends.
Finally, the higher authority takes these suggestions to frame a procedure which will be adopted
in order to complete the project efficiently, within the given time and minimizing the risks.
Stage 2: Describing requirements
16
(Source: Jeon, et al. 2015, p.937)
The process involved in the Software development lifecycle consists of the following steps
Stage 1: Planning and requirement analysis
This is the fundamental process which is performed by senior members of the company as it
required some crucial decision making. Data and information are collected from customer’s end
which is then processed by various departments of the company to give their analysis. This
analysis consists of ways of approach, cost-effectiveness, risks and marketing trends etc. This
analysis is generally based on economic surveys, operation research and technological trends.
Finally, the higher authority takes these suggestions to frame a procedure which will be adopted
in order to complete the project efficiently, within the given time and minimizing the risks.
Stage 2: Describing requirements
16
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.

Since the planning is done so the approach needs to be approved by the customers and market
analysts. This is done by providing software requirements and specifications documents which
contains the list of requirements during the entire cycle.
Stage 3: Product architecture
Based on the requirement list, production unit proposes different methods which can be adopted
while developing the project.
Stage 4: Developing stage
This is the most important stage where the production unit uses the provided materials and
suggested process to develop the product. Several programming languages like C, C++, Java,
PHP etc are used in this process which purely depends on the nature of product.
Stage 5: Testing
Testing is performed in almost all the stages to check the feasibility and add to the product
quality. But finally when the product is manufactured then it is tested in different conditions and
then recommendations are given.
Stage 6: Market launching
Finally, the product is launched in the market and promoted to its target customers.
SDLC Models
There are several models of SDLC but some of the commonly used models are mentioned below
● Waterfall model
● Iterative model
● Spiral model
● V-model
● Big bang model
Some of the related procedures are the agile model, RAD model, Rapid application development
and prototyping models.
Using above seven technology and implemented into different healthcare services will help to
serve better to patients and other customers. As in this project it has been possible for us to
recognize software technology in healthcare and hospitality management. UK market research
about software composition analysis will give more advanced technology for innovation of
project in upcoming project evaluation (Yang, et al. 2017, p.12).
Here we will be discussing some of advanced technology and software advancements.
17
analysts. This is done by providing software requirements and specifications documents which
contains the list of requirements during the entire cycle.
Stage 3: Product architecture
Based on the requirement list, production unit proposes different methods which can be adopted
while developing the project.
Stage 4: Developing stage
This is the most important stage where the production unit uses the provided materials and
suggested process to develop the product. Several programming languages like C, C++, Java,
PHP etc are used in this process which purely depends on the nature of product.
Stage 5: Testing
Testing is performed in almost all the stages to check the feasibility and add to the product
quality. But finally when the product is manufactured then it is tested in different conditions and
then recommendations are given.
Stage 6: Market launching
Finally, the product is launched in the market and promoted to its target customers.
SDLC Models
There are several models of SDLC but some of the commonly used models are mentioned below
● Waterfall model
● Iterative model
● Spiral model
● V-model
● Big bang model
Some of the related procedures are the agile model, RAD model, Rapid application development
and prototyping models.
Using above seven technology and implemented into different healthcare services will help to
serve better to patients and other customers. As in this project it has been possible for us to
recognize software technology in healthcare and hospitality management. UK market research
about software composition analysis will give more advanced technology for innovation of
project in upcoming project evaluation (Yang, et al. 2017, p.12).
Here we will be discussing some of advanced technology and software advancements.
17

Using White Source Software Applying Black Duck Software Using CA technologies Providing White Hat security and Rogue software
Last but not least, our implemented technologies such are Java and Net Beans (Khatchadourian,
et al. 2016, p.104).
Justification for using upgraded technology:
According to case scenarios of this report, giving by Hastings Dental Care house in UK it has
been cleared to understand that this industry is going to introduce most innovative technology
into their business ever.
Council of Hastings and members will accepted this advancement of software up gradation
process. It has been noticed that several things of this industry is out of control due to over
patient and doctor appointment pressure (Widemann and Lepper, 2015, p.37).
Thus North American countries and European countries like United Kingdom has introduced
advanced software prototyping into their medicine business. IN case of small to medium medical
stores in UK are now using this technology for growing up their business and stand a good
position in global market.
Innovative protocols like software prototyping will help to define company structure and annual
transactions with a suitable way. In this report, discussing about software advancement will be
beneficial for getting in touch of database and software programming (Christopher and Jack,
2016, p.19).
Advantages and Disadvantages of this
Advantages:
Customers and patients are satisfied with healthcare service
Patients who are likely to be waiting for Doctor’s appointment before, they are getting
quick treatment process.
Furthermore, new technologies specifically for medical sciences have been modified and
patients are treated well.
From market perspective, it has also been concluded that Java and Net Beans will been
effective of software progressing and whole management work.
18
Last but not least, our implemented technologies such are Java and Net Beans (Khatchadourian,
et al. 2016, p.104).
Justification for using upgraded technology:
According to case scenarios of this report, giving by Hastings Dental Care house in UK it has
been cleared to understand that this industry is going to introduce most innovative technology
into their business ever.
Council of Hastings and members will accepted this advancement of software up gradation
process. It has been noticed that several things of this industry is out of control due to over
patient and doctor appointment pressure (Widemann and Lepper, 2015, p.37).
Thus North American countries and European countries like United Kingdom has introduced
advanced software prototyping into their medicine business. IN case of small to medium medical
stores in UK are now using this technology for growing up their business and stand a good
position in global market.
Innovative protocols like software prototyping will help to define company structure and annual
transactions with a suitable way. In this report, discussing about software advancement will be
beneficial for getting in touch of database and software programming (Christopher and Jack,
2016, p.19).
Advantages and Disadvantages of this
Advantages:
Customers and patients are satisfied with healthcare service
Patients who are likely to be waiting for Doctor’s appointment before, they are getting
quick treatment process.
Furthermore, new technologies specifically for medical sciences have been modified and
patients are treated well.
From market perspective, it has also been concluded that Java and Net Beans will been
effective of software progressing and whole management work.
18

Net Beans IDE 8.1 supported with .java files have been used here for coding and get
class and sequential diagram perfectly.
Disadvantages:
Moreover with all its advantages there are some disputes in modification such as:
Sequential diagram will not easily possible to do in Net beans or Java
Thus other version of this can be accessible such as Visio, Visio BDCX Beta which may
not be compatible in such devices
On the other hand, it has been noticed that trial version of Net Beans software will some
minor an neglecting error due to which file sometime run in lag.
Finally not yet importantly with all its advantages and disadvantages introducing software
technologies and several upgradeable programming into UK’s health sector will give modified
version of health checking program. It is also beneficial for getting best outcomes and results in
future (Yang, et al. 2017, p.12).
Software Development and its Challenges
Software development is very much essential for any kind of organization for its further
development. Software development is considered or known as a process for designing, testing
and programming software components. There are many types of software development are
available. All these developments of software need to be done using specific appropriate
methods. Any organization needs to identify the right method first in order to develop its
required software. But, there are some challenges or unwanted issues regarding this development
that needs to be resolved as soon as possible. Development of software in an organization is very
crucial for developing that organizational structure stronger.
Here, an organization named Hastings dental health care has been taken into account. This
organization is willing to develop a new digital information management system where all data
can be recorded, updated with the use Microsoft word manually (Ienca, et al. 2018, p.1039). The
management team of this organization now understands that new developed software will be a
huge support to the organization itself. Existing staff of this organization can use this software
19
class and sequential diagram perfectly.
Disadvantages:
Moreover with all its advantages there are some disputes in modification such as:
Sequential diagram will not easily possible to do in Net beans or Java
Thus other version of this can be accessible such as Visio, Visio BDCX Beta which may
not be compatible in such devices
On the other hand, it has been noticed that trial version of Net Beans software will some
minor an neglecting error due to which file sometime run in lag.
Finally not yet importantly with all its advantages and disadvantages introducing software
technologies and several upgradeable programming into UK’s health sector will give modified
version of health checking program. It is also beneficial for getting best outcomes and results in
future (Yang, et al. 2017, p.12).
Software Development and its Challenges
Software development is very much essential for any kind of organization for its further
development. Software development is considered or known as a process for designing, testing
and programming software components. There are many types of software development are
available. All these developments of software need to be done using specific appropriate
methods. Any organization needs to identify the right method first in order to develop its
required software. But, there are some challenges or unwanted issues regarding this development
that needs to be resolved as soon as possible. Development of software in an organization is very
crucial for developing that organizational structure stronger.
Here, an organization named Hastings dental health care has been taken into account. This
organization is willing to develop a new digital information management system where all data
can be recorded, updated with the use Microsoft word manually (Ienca, et al. 2018, p.1039). The
management team of this organization now understands that new developed software will be a
huge support to the organization itself. Existing staff of this organization can use this software
19
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

for booking appointments and organizing all assigned tasks according to the business needs. All
staff and patients can use this software in an effective and efficient way.
This organization has some rules that need to be followed. This is open from Mondays to Fridays
and each day 44 patients can be accommodated. Only Friday is the day when 22 patients get
accommodated. Now this is considered as one of the major issues that need to be resolved.
Sometimes some patient may need a doctor for a sudden emergency but just because the patient
failed to enlist name, becomes unable to reach the doctor (Baum, 2017, p.545). This software
should be used by this organization in order to find a perfect solution for the good sake of health.
Now, technologies have been upgraded and people can get their bookings with the help of
modern technologies.
Hastings dental health care is one of the leading organizations where all new facilities along with
all new equipment have been provided. Development of this type of software in this organization
provides assistance in keeping itself updated with all bookings and all data. Appointments can be
done immediately now a day’s via phone calls (Higgs, et al. 2018, p.400). But, appointments will
be assured according to the available slots within the organization and doctors. The admin and
customers are now able to watch their booking history along with payment history. According to
the management team of this organization, this software has become a grand success within al
staff and customers.
This newly developed software which has been used by HDCH has others work to do also. Only
doctors can check their patient history and can change the allocation of a patient as per choice.
Admin staff of this organization looks after all bookings and schedule appointments. Sometimes
some regular doctors may not come (Aljawarneh, et al. 2017, p.390). Then, this software help
admin staff to have a proper replacement for that absent doctor. The management team of this
organization has understood that continuous updating of this software along with all collectd data
lead to an overall up gradation to the organization. Among all methods, agile method is the best
one for developing software.
SDLC is known as software development life cycle. This is a mix of processes through which
software develops. Among all, agile method is considered the most effective one. This method
has positives along with some disadvantages (Vijayakumar and Arun, 2017, p.11). This software
20
staff and patients can use this software in an effective and efficient way.
This organization has some rules that need to be followed. This is open from Mondays to Fridays
and each day 44 patients can be accommodated. Only Friday is the day when 22 patients get
accommodated. Now this is considered as one of the major issues that need to be resolved.
Sometimes some patient may need a doctor for a sudden emergency but just because the patient
failed to enlist name, becomes unable to reach the doctor (Baum, 2017, p.545). This software
should be used by this organization in order to find a perfect solution for the good sake of health.
Now, technologies have been upgraded and people can get their bookings with the help of
modern technologies.
Hastings dental health care is one of the leading organizations where all new facilities along with
all new equipment have been provided. Development of this type of software in this organization
provides assistance in keeping itself updated with all bookings and all data. Appointments can be
done immediately now a day’s via phone calls (Higgs, et al. 2018, p.400). But, appointments will
be assured according to the available slots within the organization and doctors. The admin and
customers are now able to watch their booking history along with payment history. According to
the management team of this organization, this software has become a grand success within al
staff and customers.
This newly developed software which has been used by HDCH has others work to do also. Only
doctors can check their patient history and can change the allocation of a patient as per choice.
Admin staff of this organization looks after all bookings and schedule appointments. Sometimes
some regular doctors may not come (Aljawarneh, et al. 2017, p.390). Then, this software help
admin staff to have a proper replacement for that absent doctor. The management team of this
organization has understood that continuous updating of this software along with all collectd data
lead to an overall up gradation to the organization. Among all methods, agile method is the best
one for developing software.
SDLC is known as software development life cycle. This is a mix of processes through which
software develops. Among all, agile method is considered the most effective one. This method
has positives along with some disadvantages (Vijayakumar and Arun, 2017, p.11). This software
20

has decreased the required time and reduces the usage of the components. This software should
have special skilled team for a smooth run. Selection of the right way for developing any
software within an organization and it is done in many ways. First, all these models need to be
identified and then should be assessed. An organization like Hastings health care also looks after
all these processes in order to develop new software.
Agile method has some advantages along with some disadvantages. These disadvantages need to
be determined first as these provide all unwanted issues that put a prevention in an organization
(Gupta, et al. 2017, p.162). These issues need to be solved with the help of this newly developed
software and thus, the impact of this software on the overall efficiency and effectiveness of the
organization cannot be ignored. An organization like Hastings should develop such new software
with the help of agile method as this will provide a development within the organizational
structure.
Professional and legal issues
There are various professional and legal issues that were faced by me while completing
this project. There were various kinds of laws related to web enterprises and practices. While
completing this project I had identified that there are various kinds of legal practices that are
being carried out but are completely unethical. Being a developer I had tried to follow all the
legislation and so that any kind of legal issues can be avoided. Other than this there are various
kinds of professional standards that were required to be kept in mind and followed in order to
complete the project in an appropriate manner. Some of the most common professional practices
that were followed by me were: design and develop all the diagrams and coding without copying
other work. All the diagrams designed are self-made and are not copied from others. In order to
complete a project professionally it is important to follow all kinds of standard professional
standards so that any kind of professional issues can be avoided. Personally I believe that one of
the most important professional issue that can be faced by any developer is privacy issue and if
these privacy issues are not followed then it creates various other kinds of legal, professional,
social and ethical issues. I as a developer have tried to follow legal, professional and ethical
scope in order to develop a software. For development of this software I have focused more on
professional and legal issues that could have been faced by me during this project. Two most
21
have special skilled team for a smooth run. Selection of the right way for developing any
software within an organization and it is done in many ways. First, all these models need to be
identified and then should be assessed. An organization like Hastings health care also looks after
all these processes in order to develop new software.
Agile method has some advantages along with some disadvantages. These disadvantages need to
be determined first as these provide all unwanted issues that put a prevention in an organization
(Gupta, et al. 2017, p.162). These issues need to be solved with the help of this newly developed
software and thus, the impact of this software on the overall efficiency and effectiveness of the
organization cannot be ignored. An organization like Hastings should develop such new software
with the help of agile method as this will provide a development within the organizational
structure.
Professional and legal issues
There are various professional and legal issues that were faced by me while completing
this project. There were various kinds of laws related to web enterprises and practices. While
completing this project I had identified that there are various kinds of legal practices that are
being carried out but are completely unethical. Being a developer I had tried to follow all the
legislation and so that any kind of legal issues can be avoided. Other than this there are various
kinds of professional standards that were required to be kept in mind and followed in order to
complete the project in an appropriate manner. Some of the most common professional practices
that were followed by me were: design and develop all the diagrams and coding without copying
other work. All the diagrams designed are self-made and are not copied from others. In order to
complete a project professionally it is important to follow all kinds of standard professional
standards so that any kind of professional issues can be avoided. Personally I believe that one of
the most important professional issue that can be faced by any developer is privacy issue and if
these privacy issues are not followed then it creates various other kinds of legal, professional,
social and ethical issues. I as a developer have tried to follow legal, professional and ethical
scope in order to develop a software. For development of this software I have focused more on
professional and legal issues that could have been faced by me during this project. Two most
21

important legal and professional issues focused by me were privacy issue and authenticity issue
in order to avoid professional and legal issues.
Conclusion
This report can be concluded in such a way that software engineering has some major principles
and that is very essential for any kind of organization. Here, an organization named Hastings
dental health care has been taken into account and requirement of such new software has been
discussed. There are various ways or methods available and then, selection of the right one
according to the need of the organization is very important. Along with this, all the positives and
negatives of the selected method need to be identified so that the unwanted issues can be
removed as soon as possible. This software has a major role in developing an organizational
structure along with all criteria. So, finally, this can be described that an organization like
Hastings group should develop this kind of software for further development by maintaining a
sustainable growth.
Reference list
Aljawarneh, S.A., Alawneh, A. and Jaradat, R., 2017. Cloud security engineering: Early stages
of SDLC. Future Generation Computer Systems, 74, pp.385-392.
Baum, S.D., 2017. On the promotion of safe and socially beneficial artificial intelligence. AI &
SOCIETY, 32(4), pp.543-551.
Christopher, G.E. and Jack, I.E.K.E., 2016. A model of local area network based application for
Inter-office communication. In Proceedings of the World Congress on Engineering and
Computer Science (Vol. 1, pp. 19-21).
Coblenz, M., Nelson, W., Aldrich, J., Myers, B. and Sunshine, J., 2017, May. Glacier: Transitive
class immutability for Java. In 2017 IEEE/ACM 39th International Conference on Software
Engineering (ICSE) (pp. 496-506). IEEE.
22
in order to avoid professional and legal issues.
Conclusion
This report can be concluded in such a way that software engineering has some major principles
and that is very essential for any kind of organization. Here, an organization named Hastings
dental health care has been taken into account and requirement of such new software has been
discussed. There are various ways or methods available and then, selection of the right one
according to the need of the organization is very important. Along with this, all the positives and
negatives of the selected method need to be identified so that the unwanted issues can be
removed as soon as possible. This software has a major role in developing an organizational
structure along with all criteria. So, finally, this can be described that an organization like
Hastings group should develop this kind of software for further development by maintaining a
sustainable growth.
Reference list
Aljawarneh, S.A., Alawneh, A. and Jaradat, R., 2017. Cloud security engineering: Early stages
of SDLC. Future Generation Computer Systems, 74, pp.385-392.
Baum, S.D., 2017. On the promotion of safe and socially beneficial artificial intelligence. AI &
SOCIETY, 32(4), pp.543-551.
Christopher, G.E. and Jack, I.E.K.E., 2016. A model of local area network based application for
Inter-office communication. In Proceedings of the World Congress on Engineering and
Computer Science (Vol. 1, pp. 19-21).
Coblenz, M., Nelson, W., Aldrich, J., Myers, B. and Sunshine, J., 2017, May. Glacier: Transitive
class immutability for Java. In 2017 IEEE/ACM 39th International Conference on Software
Engineering (ICSE) (pp. 496-506). IEEE.
22
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.

da Silva, T.D., Sampaio, A. and Mota, A., 2015, September. Verifying transformations of java
programs using alloy. In Brazilian Symposium on Formal Methods (pp. 110-126). Springer,
Cham.
Funabiki, N., Dake, M., Zaw, K.K. and Kao, W.C., 2016, November. A workbook design for fill-
in-blank problems in Java programming learning assistant system. In International Conference
on Broadband and Wireless Computing, Communication and Applications (pp. 331-342).
Springer, Cham.
Gupta, D., Ahlawat, A.K. and Sagar, K., 2017. Usability prediction & ranking of SDLC models
using fuzzy hierarchical usability model. Open Engineering, 7(1), pp.161-168.
Harris, A.L., Lang, M., Yates, D. and Kruck, S.E., 2019. Incorporating ethics and social
responsibility in IS education. Journal of Information Systems Education, 22(3), p.1.
He, W., Yuan, X. and Yang, L., 2019. Supporting case-based learning in information security
with web-based technology. Journal of Information Systems Education, 24(1), p.3.
Higgs, E., Harris, J., Murphy, S., Bowers, K., Hobbs, R., Jenkins, W., Kidwell, J., Lopoukhine,
N., Sollereder, B., Suding, K. and Thompson, A., 2018. On principles and standards in
ecological restoration. Restoration Ecology, 26(3), pp.399-403.
Hong, J., Hu, J. and Lin, G., 2017, August. A Java Card Virtual Machine Design Based on Off-
card/On-card Co-design Pre-processing. In CCF National Conference on Compujter Engineering
and Technology (pp. 11-21). Springer, Singapore.
Ienca, M., Wangmo, T., Jotterand, F., Kressig, R.W. and Elger, B., 2018. Ethical design of
intelligent assistive technologies for dementia: a descriptive review. Science and engineering
ethics, 24(4), pp.1035-1055.
Jackson, W., 2017. JavaFX 9 Scene Graph Hierarchy: A Foundation for Java 9 Game Design.
In Pro Java 9 Games Development (pp. 185-210). Apress, Berkeley, CA.
Jeon, J., Qiu, X., Foster, J.S. and Solar-Lezama, A., 2015, August. JSketch: sketching for Java.
In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering (pp.
934-937). ACM.
Khatchadourian, R., Moore, O. and Masuhara, H., 2016, March. Towards improving interface
modularity in legacy java software through automated refactoring. In Companion Proceedings of
the 15th International Conference on Modularity (pp. 104-106). ACM.
23
programs using alloy. In Brazilian Symposium on Formal Methods (pp. 110-126). Springer,
Cham.
Funabiki, N., Dake, M., Zaw, K.K. and Kao, W.C., 2016, November. A workbook design for fill-
in-blank problems in Java programming learning assistant system. In International Conference
on Broadband and Wireless Computing, Communication and Applications (pp. 331-342).
Springer, Cham.
Gupta, D., Ahlawat, A.K. and Sagar, K., 2017. Usability prediction & ranking of SDLC models
using fuzzy hierarchical usability model. Open Engineering, 7(1), pp.161-168.
Harris, A.L., Lang, M., Yates, D. and Kruck, S.E., 2019. Incorporating ethics and social
responsibility in IS education. Journal of Information Systems Education, 22(3), p.1.
He, W., Yuan, X. and Yang, L., 2019. Supporting case-based learning in information security
with web-based technology. Journal of Information Systems Education, 24(1), p.3.
Higgs, E., Harris, J., Murphy, S., Bowers, K., Hobbs, R., Jenkins, W., Kidwell, J., Lopoukhine,
N., Sollereder, B., Suding, K. and Thompson, A., 2018. On principles and standards in
ecological restoration. Restoration Ecology, 26(3), pp.399-403.
Hong, J., Hu, J. and Lin, G., 2017, August. A Java Card Virtual Machine Design Based on Off-
card/On-card Co-design Pre-processing. In CCF National Conference on Compujter Engineering
and Technology (pp. 11-21). Springer, Singapore.
Ienca, M., Wangmo, T., Jotterand, F., Kressig, R.W. and Elger, B., 2018. Ethical design of
intelligent assistive technologies for dementia: a descriptive review. Science and engineering
ethics, 24(4), pp.1035-1055.
Jackson, W., 2017. JavaFX 9 Scene Graph Hierarchy: A Foundation for Java 9 Game Design.
In Pro Java 9 Games Development (pp. 185-210). Apress, Berkeley, CA.
Jeon, J., Qiu, X., Foster, J.S. and Solar-Lezama, A., 2015, August. JSketch: sketching for Java.
In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering (pp.
934-937). ACM.
Khatchadourian, R., Moore, O. and Masuhara, H., 2016, March. Towards improving interface
modularity in legacy java software through automated refactoring. In Companion Proceedings of
the 15th International Conference on Modularity (pp. 104-106). ACM.
23

Kim, J., Batory, D. and Dig, D., 2015, September. Scripting parametric refactorings in Java to
retrofit design patterns. In 2015 IEEE International Conference on Software Maintenance and
Evolution (ICSME) (pp. 211-220). IEEE.
Marchant, G.E., Allenby, B., Arkin, R.C., Borenstein, J., Gaudet, L.M., Kittrie, O., Lin, P.,
Lucas, G.R., O’Meara, R. and Silberman, J., 2015. International governance of autonomous
military robots. Handbook of Unmanned Aerial Vehicles, pp.2879-2910.
Robillard, M.P., 2019. Functional Design. In Introduction to Software Design with Java (pp.
237-272). Springer, Cham.
Santos, A.L. and Coelho, D., 2016, June. Java Extensions for Design Pattern Instantiation.
In International Conference on Software Reuse (pp. 284-299). Springer, Cham.
Sciore, E., 2019. Modular Software Design. In Java Program Design (pp. 1-46). Apress,
Berkeley, CA.
Spadini, D., Aniche, M., Bruntink, M. and Bacchelli, A., 2019. Mock objects for testing java
systems. Empirical Software Engineering, 24(3), pp.1461-1498.
Stahl, B.C., Timmermans, J. and Mittelstadt, B.D., 2016. The ethics of computing: A survey of
the computing-oriented literature. ACM Computing Surveys (CSUR), 48(4), p.55.
Vega-Gisbert, O., Roman, J.E. and Squyres, J.M., 2016. Design and implementation of Java
bindings in Open MPI. Parallel Computing, 59, pp.1-20.
Vijayakumar, K. and Arun, C., 2017. Continuous security assessment of cloud based applications
using distributed hashing algorithm in SDLC. Cluster Computing, pp.1-12.
Widemann, B.T. and Lepper, M., 2015, September. On-line synchronous total purely functional
data-flow programming on the java virtual machine with sig. In Proceedings of the Principles
and Practices of Programming on The Java Platform (pp. 37-50). ACM.
Yang, J., Lee, Y., Gandhi, D. and Valli, S.G., 2017, August. Synchronized UML diagrams for
object-oriented program comprehension. In 2017 12th International Conference on Computer
Science and Education (ICCSE) (pp. 12-17). IEEE.
FeedBack from tutor:-- got 35/100
24
retrofit design patterns. In 2015 IEEE International Conference on Software Maintenance and
Evolution (ICSME) (pp. 211-220). IEEE.
Marchant, G.E., Allenby, B., Arkin, R.C., Borenstein, J., Gaudet, L.M., Kittrie, O., Lin, P.,
Lucas, G.R., O’Meara, R. and Silberman, J., 2015. International governance of autonomous
military robots. Handbook of Unmanned Aerial Vehicles, pp.2879-2910.
Robillard, M.P., 2019. Functional Design. In Introduction to Software Design with Java (pp.
237-272). Springer, Cham.
Santos, A.L. and Coelho, D., 2016, June. Java Extensions for Design Pattern Instantiation.
In International Conference on Software Reuse (pp. 284-299). Springer, Cham.
Sciore, E., 2019. Modular Software Design. In Java Program Design (pp. 1-46). Apress,
Berkeley, CA.
Spadini, D., Aniche, M., Bruntink, M. and Bacchelli, A., 2019. Mock objects for testing java
systems. Empirical Software Engineering, 24(3), pp.1461-1498.
Stahl, B.C., Timmermans, J. and Mittelstadt, B.D., 2016. The ethics of computing: A survey of
the computing-oriented literature. ACM Computing Surveys (CSUR), 48(4), p.55.
Vega-Gisbert, O., Roman, J.E. and Squyres, J.M., 2016. Design and implementation of Java
bindings in Open MPI. Parallel Computing, 59, pp.1-20.
Vijayakumar, K. and Arun, C., 2017. Continuous security assessment of cloud based applications
using distributed hashing algorithm in SDLC. Cluster Computing, pp.1-12.
Widemann, B.T. and Lepper, M., 2015, September. On-line synchronous total purely functional
data-flow programming on the java virtual machine with sig. In Proceedings of the Principles
and Practices of Programming on The Java Platform (pp. 37-50). ACM.
Yang, J., Lee, Y., Gandhi, D. and Valli, S.G., 2017, August. Synchronized UML diagrams for
object-oriented program comprehension. In 2017 12th International Conference on Computer
Science and Education (ICCSE) (pp. 12-17). IEEE.
FeedBack from tutor:-- got 35/100
24

Part 1: System Design: 10/50
Use case model 2/10
A description was provided, however, should present use case diagram based on a list of functional
requirements from the scenario narrative including relevant actors, use cases and associations.
Class diagram 4/10
• Student demonstrated a naive class diagram. Student should present more relevant class entities, with better
application of OO features and associations such as composition and aggregation. More key attributes and
methods could be presented as well.
Sequence diagram 4/10
• A more logical design including method calls and use of objects that reflect a proper class diagram with
more accurate messages communications amongst objects should be considered.
Program: 0/20
• No evidence of working program.
Part 2: Reflection and Critical Evaluation 25/50
Introduction, Conclusion and Criticality 8/10
• Overall satisfactory reflection and evaluation with relevant discussion about software engineering concepts
and Software Development Life Cycle (SDLC) methodologies.
Critical self-reflection on your work 10/15
• Satisfactory reflection on the whole project development, however, should elaborate more on various relevant
aspects including design and implementation limitations and recommendations for further improvements.
Professional and legal issues 0/15
• Should have a critical reflection on professional, legal, social, security and ethical issues related to the design
and development of the software.
Citation and references 7/10
• Satisfactory report structure and references.
Overall marks: 35/100
25
Use case model 2/10
A description was provided, however, should present use case diagram based on a list of functional
requirements from the scenario narrative including relevant actors, use cases and associations.
Class diagram 4/10
• Student demonstrated a naive class diagram. Student should present more relevant class entities, with better
application of OO features and associations such as composition and aggregation. More key attributes and
methods could be presented as well.
Sequence diagram 4/10
• A more logical design including method calls and use of objects that reflect a proper class diagram with
more accurate messages communications amongst objects should be considered.
Program: 0/20
• No evidence of working program.
Part 2: Reflection and Critical Evaluation 25/50
Introduction, Conclusion and Criticality 8/10
• Overall satisfactory reflection and evaluation with relevant discussion about software engineering concepts
and Software Development Life Cycle (SDLC) methodologies.
Critical self-reflection on your work 10/15
• Satisfactory reflection on the whole project development, however, should elaborate more on various relevant
aspects including design and implementation limitations and recommendations for further improvements.
Professional and legal issues 0/15
• Should have a critical reflection on professional, legal, social, security and ethical issues related to the design
and development of the software.
Citation and references 7/10
• Satisfactory report structure and references.
Overall marks: 35/100
25
1 out of 25
Related Documents

Your All-in-One AI-Powered Toolkit for Academic Success.
+13062052269
info@desklib.com
Available 24*7 on WhatsApp / Email
Unlock your academic potential
© 2024 | Zucol Services PVT LTD | All rights reserved.