<
>
Download
Genre/category

Final thesis
Information Technology / Computer S

University, School

Hazelwick School Crawley

Grade, Teacher, Year

ICT 2018

Author / Copyright
Jörg J. ©
Metadata
Price 10.50
Format: pdf
Size: 3.92 Mb
Without copy protection
Rating
sternsternsternsternstern
ID# 75691







Unit6:ApplicationDesign

JusdriveDrivingSchool

CambridgeTechnical:Application

Development


Contents


1.1 User requirements (P2)


The user requirements are what the client expects the software to be able to do. They would tell the programmers what they need the program to do and what they also want the program to do. It is then the programmer’s duty that they make sure that they satisfy the user’s needs. (Courage & Baxter, 2005)


Later on in the testing stage of development life cycle, it will be crucial that it is tested that the user requirements are met and are fully functional.


1.1.2 What does Jusdrive want?


Jusdirve the company is question, are demanding an app that as both uses for the instructor and the students for the progression of driving lessons. The CEO, Justin Godfrey, will be seeking for features that can produce an app that will excel as well as suprass expectation and competition, vcraeting an app with both necessary and helots features imarative ti the apps function.

This section willl therefore be the documentation of discussuin between the developer and the CEO Justin Godfrey to create a better understanding of what is needed and wanted from the app, that woill provide an Nordict that JusDrive will want to align their brand name with.


A desire and want from the app is to include a fully working dash cam feature, that will allow the students and instructor stop record, maintain and analyse at a later date their driving lesson, which the CEo Mr Godfrey believes will facileaet the aid the steady progress of the students, with a potential to help them pass their tests sooner, it will help identify and outline key issues that need improving, and allow to better communicate wit the instructor of visual reproduction of the lesson that took lace at specific date, despite it not being quintessential for the app during deleievry, it is a want that will have to be discussed over the success of the app.


A feedback and reviews section for the app is also a want by the CEO, to allow integration with social media channels and directories such as yell.com and Facebook, allowing for a wider target audience to be reached should they recover positive feedback, which also isn’t compulsory to be added, hover the addition of this feature in essence improve the brand image of JusDrive attracting new customers to learn and progress with their company, the feedback and reviews section also allows the company to easily monitor and organise issues with the app, as well as providing a tsreamlined channel for the users of the app to communicate potential issues needing to be rectified with the softwaree, in an easy to use, simple process.


1.1.3 What does Jusdrive need?


Strict requirements will need to be adhered to in order to ensure proper delivery and running of the app, including legal reasons such as adhering to data protection laws, for example a secure system whee databases have been encrypted, as well as the garner function of the app, which require basic and simple features which collectively will deliver a more satisfactory experience when using the app on a weekly or daily basis.


Cross Platform compatibility is a necessity for the company that need to cater to the demands of its clients, from a wide demographic of bot age and gender, some of which do oot all have access to a smartphone, therefore the app will need to work across various softwares and be optimised for the hardware currently availbel, eg Pc’s Android devices, Amazon fire, Kindle etc.

This will also allow or the users who do have access to a smartphone to access their personal information on multiple devices, which in turn could separate Jusdrive as a company fro the competion who can better cater to he clients needs with a wide reach and scope


The data Protection act is put in place to ensure data is kept safe, and not prone to being leaked, by which personal information including identity and bank information may be leaked, resulting in crime and sever legal action against the company, therefore it is in the company best interested to invest heavily into a solution that is both safe and effective for the users, which builds trust between the client and the business, as well builds the comet reputation, maintaining an image of regard for their customers.

Download Unit 6: Applicat­ion Design: Jusdrive Driving School Cambridg­e Technica­l: Applicat­ion Developm­ent
• Click on download for the complete and text
• This is a sharing plattform for papers
Upload your paper and receive this one for free
• Or you can buy simply this text

The data protection act is also pit in place for internally to product and dispose of

Another need for Jusdrive to have on its app is to have a secure system to make sure customers data is not lost or leaked and obeys the Data protection act. The data protection act is a law which has been put into place to make sure that employees/customers data is safely stored, protected and disposed of. Failing to follow this law will see severe consequence for Jusdrive.

Therefore, it is important that it is followed correctly. (Strobl, et al., 2000). So it is then a need of Jusdrive to make sure that they meet the security needs of the customer for legal reasons.


1.1.3.1 User requirements table


Wants

Needs

To have a dash cam system in order to help students monitor how their lesson went and how to improve. This want because you don’t need to have a dash cam system but it just helps the student with seeing how to improve. This feature is just an extra service which is provided.

The app must be transferable to PCs, Kindles and Amazon fire for those customers who are not able to access the app on their mobile phone.

Having the feedback and reviews section in the app is only there to help Jusdrive see how they can improve their service and to help them lure more customers in.

There must be a secure system in place to insure that customer’s data is not leaked or lost. This would be through having several security measures both physical and non-physical e.g. Locks, passwords, Firewalls, Encryption, safes etc.

1.1.4 Correspondence to Jusdrive


So having read through the Jusdrive Specification of what they want there are a few things which need to be discussed between Justin Godfrey and me on deciding on certain aspects of the app and letting him know what can be done and what can’t be done.


So to start with I would need to ask a few questions like what colour scheme he wants his app to have. Also we would need to discuss how he wants the layout of the main menu to look and what features go where. Furthermore, the layout and order of the data base needs to be discussed on how it will be ordered, and what type of keys it would use. Another aspect of the app which will need to be discussed with Mr.

Godfrey is the security measures which need to be put in place in order to keep user’s data protected. The database would also need protecting, so this would also need to be discussed on how to keep it safe. It may be as simple as having password and usernames or have encryption.


1.2 Product development models


Product development models are several different methodologies, which have been selected in order to aid the development of a project. The models specify several different stages, which need to be carried out in a certain order for the development of the product. (Phillips, 2011)


There are several product development models which are available to the user when deciding on which one would be most suitable for their project which include:

  • The prototype model

  • The agile methodology

  • The spiral methodology

  • The iterative model

  • The RAD model

  • The incremental methodology

  • The waterfall method


Not all models would be suitable for every project, plus there are numerous factors which would influence the decision of which model would be most appropriate for the task in hand. This would include factors like:

  • The budget of which is available for the project

  • The complicity of the project

  • If it’s a new project or if the product is being developed


1.2.1 the prototype model


The prototyping model is a system development method in which a prototype is built, tested and reworked as necessary until an acceptable prototype is finally achieved from which the complete system or product can now be developed.


This may be useful for Jusdrive as it allows there to be a model of the software which is being developed and would allow there to be changes made early on if needed to be.

The advantages of using this model are:

  • Better quality system delivered as sometimes the developer may not fully be sure what the user wants. So by prototyping it enables any misunderstandings to be identified and sorted out as early on in the process

  • Its cost saving as its less expensive to correct problems with the system in the early stages of development than towards the end of the project.


    However, the disadvantages of using the prototype model are;

    • It increases development time as the user may ask for features to be included which were never in the original user requirements specification. This can then lead to increased development time and costs

    • When building a prototype, the real system is on hold meaning that the development time of the real system is delayed and increased leading to the project being delayed.


    (Malcom, 2010)


    1.2.2 The Agile method


    The agile methodology is an approach to software development where teams are able to respond to unpredictable change. (Singh, 2008)


    The Agile methodology is often used in situations in high risk projects and incudes features from the waterfall and the prototype model.


    The advantages of using this methodology are:

    • Late changes in the requirements can be made

    • The continuous communication between members of the project means that there is a better understanding between colleagues leading to a better understanding on the job in hand.


    However, the disadvantages of the Agile method are:

    • A very skilled and experienced work force is required in order to make big decisions during the development stage. Meaning that new programmers would not be able to use the agile methodology correctly without the aid of an experienced programmer.

    • The project could easily go off track if the customer hasn’t made it very clear of what their requirements are.


    (Paetsch, 2003)


    1.2.3 The Waterfall method


    The waterfall method has stages which must be followed in order of that which it has been given in. when using this method, no stages can be skipped and if looking for errors you have to check every step you’ve taken so far going back in the order there is. And because of the linear nature of the methodology means that the process does not say how to respond to any sudden rise in an unexpected output. (Schwaber, 1995)


    The advantages of this method are:

    • Due to the structure of the methodology means that it shows discipline and arrangement in how the project will be done.

    • The method is very easy for anyone to understand how the stages will be carried out and what process goes where.


    But the disadvantages for using this methodology are:

    • The model does not show how to respond to unexpected output. (Schwaber, 1995)

    • This model is not very good for high risk and challenging tasks due to the structure of the waterfall method.


  • This model consists of four stages which are planning, risk analysis, engineering and evaluation. This model gives an indication of how the final product will look. The spiral model also uses parts of the prototype model as a prototype is made and goes around the spiral model. When the prototype has been made changes and new ideas can be made in order to improve the product. (Watson, 2004)


    This model would be very useful to use for medium to high risk projects due to the stages which are taken in this project. Furthermore this model is very useful to use for new products which are looking to be launched as the stages of this model eliminate lots of potential risks and help to produce a product which has had a lot of thought put into it.


    The advantages of this model are:

    • There is a high amount of risk analysis meaning the chance of there being any problems has decreased.

    • This is a very good model to use in big projects and mission critical projects.


    However, the disadvantages of this model are:

    • That this model can be quite expensive to use due to all stages which are required like needing to prototype.

    • The risk analysis stage requires highly experienced expertise in order to avoid any possible problems which could be faced.


    (Watson, 2004)


    1.2.5 The Incremental Methodology


    This methodology splits the assignment into smaller amounts where each part is developed using the incremental life cycle until the assignment is finished. The end product is built incrementally meaning it is built piece by piece. (Phillips, 2011)


    The advantages of using this model are:

    • That it is a flexible model and is less costly to change scope and requirements than other models.

    • Since the project is broken up into small parts means that it’s easier to test and debug the programs.


    But the disadvantages of using the Incremental methodology are:

    • The project needs good preparation and good design.


    1.2.6 The RAD model


    The Rapid application development (RAD) model pays attention to creating prototypes quickly. This then means that less time is spent on the requirements, specifications and design stages of the process. The prototypes are tested throughout their development stage and at the end of each production cycle. (Davies, 1999)


    The advantages of using this model are:

    • It reduces development time due to less time being spent on the requirements, specification and design stages of the process.

    • That it encourages customer feedback and quick initial reviews occur.


    The disadvantages of using this model are:

    • That this system requires a highly skilled workforce of developers and designers, which is very costly.

    • The end user needs to be involved in the process regularly in order to make sure it meets what they were looking for.


    1.2.7 The Iterative model


    The iterative model is the methodology where continuous improvements are being made to the project. This can be done to any model like the prototype model where continuous improvements can be made to the prototypes.


    The advantages of using this methodology:

    • The continuous improvements step by step means that defects can be spotted early on meaning that the chance of defected products decreases.


    The disadvantages of this model are:

    • Due to less time being spent on documentation, errors and problems may arise which were initially not though about. this would then need to be solved leading to more money needing to be spent.


    1.2.8 suitable tasks for models (M1)


    Each methodology has certain tasks which it is best suited for, so in this section I will discuss the best projects which the methodologies are best suited for.


    The prototype methodology is best suited for tasks which involves there having to be frequent communication with the client. This is mostly used for tasks such as web interfaces where communication must be made frequently to make sure the client gets what they want. For Jusdrive this model wouldn’t be a bad model use because for a new application being produced like the one being made for Jusdrive would need regular communication made to make sure no errors are made.


    the waterfall methodology is best used for software development because of the way which the diagram is laid out, which then helps programmers design and make the software which the client wants due to the very simple diagram which can be followed easily. the model could be used for the design of the JusDrive app because of the easy layout of the design of the method.


    Allowing Jusdrive to continuously improve the design to make it suitable for their needs.


    The incremental methodology can be used when there is a need to get a product to the market quickly. However, for the iterative methodology this one would take more time because this model is designed for big projects. This model wouldn’t be suitable for Jusdrive because the application isn’t a big project furthermore the application isn’t needed in the market quickly as other projects but would only need to be ready for the summer because Jusdrive have a lot of customers during the summer because many students want to pass their lessons during the summer.

    But there is still a long time till the application will be needed, allowing the application to be developed to the standards of Jusdrive.


    1.2.9 Combined Model table


    Model

    Summery

    Diagrams

    Prototype

    Done in the early stages of development in order to get an idea of how the program will work and run. This model can be used with other models in order to have a better understanding of the user requirements.


    Agile

    This is used when for projects with high risk and for projects where there has been an unpredictable change. This methodology is also linked with the Waterfall method.


    Waterfall

    This method has stages which must be followed in order and you can only go one place forwards or one place back at a time.


    Spiral

    Has 4 stages and gives an idea of how the final product will look. It also uses parts of the prototype model to show how the final product will look.


    Incremental

    The assignments are split into smaller parts and the final project is built bit by bit.

    RAD

    The rapid application development model looks at creating prototypes quickly. The prototypes are tested throughout the development stage.


    Iterative

    This is where continuous improvements are made to the project.


    1.2.10 The model chosen for Jusdrive (P1)


    I have specified sufficient information on each aforementioned models for the utilisation of application development. Decisions must be taken personally by which option would be the best for the case of the new app that Jusdrive is spearheading the development.


    Using this methodology brings constant and updated improvements to the app ensuring any issues during development stages can be rid of quickly and efficiently whilst also maintaining strong communication with stakeholders, ultimately resulting in a final product that satisfies and exceeds the expectations Jusdrive has for the app.


    The prototype methodology was not chosen in case of the development of the app Jusdrive is requiring due to the fact the resulting factor of this particular method is not a final product that can be delivered as a final app. This, whilst useful for the development and testing phases of the creation of the app, it is better suited for other demanding projects that requires strenuous development of new software and hardware capabilities before creating a final product.


    I did not decide to choose the Waterfall method because of the way of which the app must be developed, by only being able to go one step forward or back. Also this model does not help with managing with unpredictable changes. Meaning that this model in my opinion would not be suitable for building the Jusdrive app.


    1.2.9.11 How I will build the Jusdrive app (P1)


    This stage will discuss the actions undertaken following the agile model to create and develop the application. Explaining this part of the process ensures transparency and clear planning for the results that will follow.


    A meeting with the CEO, Justin Godfrey, will open discussions of the requirements and demands the company Jusdrive has for the app, following the first step of this methodology. An ample opportunity to ensure a bridge of communication is built that will better and strengthen understanding during the development of the app.


    The succeeding step of the agile methodology involves a strategic plan within the scope of execution to list necessary features for the function of the app. An imperative stage within the process to ensure a clear idea has been determined before execution.


    The third step will include the design and the second discussion with the CEO before getting the approval to progress to the next stage of the process. An opportunity for communication to ensure involvement and satisfaction within each stage.



    The penultimate stage of the app development is the initial ease of the app, by which users are able to download and interact with was can be considered the final product. However, being the first version of the app, technical issues such as bugs and app crashes may hinder the extent of the performance of the app for many users.


    The final stage, monitors and improves the app, as new issues arise during the life of the app, and as the client reach expands, functionality at optimal speed is imperative for JusDrives clients, therefore improvements to features, performance, and interaction with the app in terms of design will be made in the form of app updates, which will be readily available for clients to download.


    1.3 Project Development Lifecycle

    1.3.1 Product development cycle


    The project development life cycle is a set of steps, which are used by programmers, to produce an information system. For the agile methodology there are 6 different stages which can be done repeatedly in order to produce a design.



    The second stage of the agile methodology is the plan stage. This stage will involve making a design of how the application will look. Also at this stage, the designer will need to make a note of what order the application will be made. This is done to make the process as efficient and effective as possible. So when I have all the information I need from Jusdrive about their needs and wants and what they want where, this would be the stage where a plan would be made of how the application will be designed whilst meeting the demand of Jusdrive.


    The third stage of the agile methodology lifecycle is designing the application. At this stage the client will be presented with non-working design of which they have discussed with the programmer and will then have to decide which design they would like to use for their business. At this stage, the design which the Jusdrive most likes will be signed off to say they want this design and the programmer will then produce a working version.


    The fourth stage of the agile methodology is the develop stage. At this stage I would have already had conformation from Jusdrive of which design they want and if there are any changes they want to the design which they would of chosen, where then it would have been developed to make it look like how Jusdrive want it to look for their driving school application.



    The last stage of the product development lifecycle is the maintenance stage. This stage would involve making changes to the software to meet new user requirements. At this stage it would also be used to fix any bugs or glitches which the software may have to improve the overall performance of the software. Regular communication would need to be made with Jusdrive to spot any potential flaws to the application, so then it can be solved before it becomes a big problem and sees customers not using the application anymore.

    Therefore, it’s crucial that communication is made, and swift action is taken if needed.


    This cycle would keep on repeating on in the same order to make sure the software is in great condition and to also make sure the software can be as good as it can be to meet new user requirements.


    1.3.2 Stakeholders

    Stakeholders have direct interest within a business, as well as being directly affected by all decisions the company may make and within the case of JusDrive, a varied group of stakeholders, including clients and the board, as well as the employees of the company, all groups with substantial roles to play with the running of company and the direction it will ultimately take.



    Swap your papers