Joydeep Shil – P5 Explain where software design structures fit into the systems development life cycle

Joydeep Shil – P5
Explain where software design structures fit into the systems development life cycle (SDLC)
What is SDLC?
SDLC stands for system development life cycle. At the point when one computer system is created, the system development cycle is followed by the system that regularly comprises of six phases. The computer system is produced utilizing this lifecycle as it separates the development procedure into basic stages and enables the computer system to be created by different individuals (e.g. experts, software engineers and analysts).

Stages of System Lifecycle:
To understand the scope – to be able to comprehend the scope of the system is very essential as it supplies a full detailed report of the computer system. As well as enabling the requirements for the designers to work out. However, a scope basically explains the whole aspect of the computer system as the key objectives are identified by the designers of the system and figure out which facilities the system may require. Once the points and goals of the computer system are made set, the requirements for the users may need to be attained. The requirements for the users must be stated clearly and both the system developers and users must understand or may result in problems occurring in the process a while later. This implies the client and software engineer need to discuss the client necessities – this is finished utilizing key inquiries, for example, ‘The core goals of the system?’, ‘How is the system operating now?’ and ‘the external systems that need interfacing with the new systems?’
To be able to create a set of system requirements that is going to be utilized to having the system designed, the programmers and designers must know the aims and purpose of the system. In addition, they will have to know the reason behind the creation of the system as it assists the system being able to be designed as well as maintaining the concentration on the objective of the system whilst the process occurs. They must fully know the features of the old/current system, so the programmers know they need to preserve the essential and original features from the old system.
Creating Specifications:
The second part of the software development cycle introduces the creation of the specifications. This is where the programmer comes to decide based on client requirements, how the program will be created. As the programmer clearly identifies the sole purpose of the website. After this step the programmer consults the specifications with his clients if they agree with it then he will proceed onto the next level.
Create Design:
In the software development cycle the creation of the design comes on the third step. This is where the programmer must define the way the program should operate to be able to meet the user requirements and fulfil its purpose. This is when the programmer creates the actual designs of the program as to how the clients request it to be.
Coding the program:
Once the designs of the system has been made, the programmers are able to create software’s and programs which the system will be utilizing. To make the programmers life more at ease it is simpler to produce a Pseudocode code which is a design tool for many programmers which results the code to be in a basic form. The Pseudocode can be converted to real code for instance, ‘input name’ to ‘console.writeline’ (“write name”).
Testing:
Testing is one of the major parts of programming. The programmer must test the program to check it meets every user requirement on the check list. This is to make sure the programmer hasn’t missed out any of the requirements the clients have requested to the programmer and so it is operating according to user requirements.
Maintain:
This is where the finished program is handed over to the client by the programmer. When programmers maintain, this means they investigate the code very closely and debug any minor errors that may appear in the programming system. So, therefore minor alterations are made to the code or simply a new updated is made.

Joydeep Shil – M1
Explain the importance of the quality of code
In this assignment, I will be explaining the importance of the quality of code. For a high-quality code to be formed, the programmers must have pre-experienced skills in coding elevated levelled and quality languages. Once they can do that, they tend to overcome many problems or issues that may have been associated whilst they were creating the software and able to apply their knowledge and skills of coding to output robust and reliable systems.
The programmer must assure the quality of code they are creating is high, due to it being very essential as it means the durability of the software is longer lasting, the ease of use and lastly users can maintain it. When quality code is designed, this responds to the user’s specifications/requirements and operates the way it is exactly created. This will result in the program to not crash and whenever used incorrectly it will respond to it properly. The comprehensibility of the code is of a top value and the code is effortlessly viable. This implies it has great variable names, makes utilization of multiple coding structures (classes and strategies) and utilizes the appropriate code format. The code is very much examined making it a top-quality software. However, there are attributes of quality coding which I have previously stated above. Below I will be explaining in depth those attributes as they are very crucial when quality programs are being created and utilizing it will assist in making improvements on the quality code designed.
Robust and Reliability
When a program is created it may not be used correctly the first time or the correct way. Some of the users may enter inaccurate data within the variable, as it may potentially trigger the software to crash as the program expects a changed format of the information. There are various issues the users may deal with for instance, the program to freeze, not allowing to input large amounts of data sources and so forth. A developer of a software program must have the ability to deliver a dependable and a strong program, which can overcome and deal with numerous problems which could occur when the program is spread to various users. Robust and reliable software’s can manage any mistakes in the code, for example, erroneous client input; the developer can code the program with the goal that it produces an error information and requests the client to amend the software to prevent the program from bugging. There are a couple of manners by which to enhance the robustness and reliability of a program, for example, utilizing validation to check client input & output error messages or do intensive tests on the system itself. These strategies for guarantees and prevent a program from being utilized erroneously and it ensures that it works to its highest level.

Usability:
The programs come handy and at ease when high quality program is produced. The way the program is utilized can be made considerably more straightforward by planning and making a virtual interface; as well as enabling the client to associate with the program. A strategy can be formed to make the program less demanding to operate. However, when a progression of content or numeric orders are required by the program to be entered, at that point the code of the program can be created by the software engineer, so the characters are recognised ; hence making entering a few commands simpler. On the other hand, there are numerous controls on the interface (textboxes, buttons, show boxes…), they can be categorised, for instance, request of function or use. Clients can discover the controls effectively, as well as having the controls assembled by work enabling them to pick up a comprehension on how the program functions.

Portability:
The portability is very crucial as it shows the several types of devices the software can be compatible with and used on numerous platforms of software. Due to how vital the versatility is, a specific device will be required to a software was to be created for a customer. This may dramatically influence to how the system is used by the organisation. To be able to create a program the software developer must have the capacity to create it in any stage or equipment – for example, Java can be utilized.

Maintenance:
The program that’s developed to an exceptional standard has a less demand in comparison to a program that may be low quality. Developers are likely to face blunders and bugs when the program has gone through some testing’s which are completely normal. The program will likewise require updates to enhance the software’s usefulness. With a top quality of programming, the maintenance of the performance is considerably less demanding despite there are highlights that great developers incorporate into their programming, for example, utilization of remarks, programming structures and great variable names. This enhances the meaningfulness of the code, as well as enhances the maintenance by making it less demanding to find blunders.

Joydeep Shil – D1
Explain the factors that can improve the readability of code
In this assignment, I will be explaining the factors can improve the readability of code. I will discuss about the diverse ways of code which can enhance its readability such as indentation, variables names and comments.
The clarity of code is exceedingly essential when programs are being written down. Developments which require a system or a program to be produced must be readable at ease for multiple purposes; for instance, making the program effectively viable. Within the systems development lifecycle during the maintenance stage, a different software developer may have to make modifications to the code for bug fixes or make enhancements or adjustments to suit any new requirements of the system – if the readability of the code isn’t effective enough, the programming maintenance will be tough.

There are a few manners by which the ability of reading the code clearly can be enhanced. The software engineer can utilize variable names, indentation and comments to make the program more legible. the indentations are utilized to isolate pieces of code, for example, the several types of loops and selection statements; in this instance making them simpler to find and read. Spacing (indenting) and lining separation can likewise enhance the structure of a program additionally making it less demanding and readable at ease.

Commenting – known as remarks in coding which is situated on the side of the code. This remark defines to other software engineers who didn’t build the code, to what the code comprehends. It’s a good practise to include remarks in coding as it makes code simpler to comprehend and gives the definition behind each line of code. This can make finding bugs and making upgrades to the code quicker as they can undoubtedly recognize any mistakes in code and correct them. Remarks are characterized in numerous ways, as it relies upon which language is utilized (C#/ Visual Basic /, CSS etc).
Using a suitable variable name is helpful while enhancing the comprehensibility of a code as they make the variable less complex to understand. Variable names are used by some developers which the randomly make up. It’s not just great in its practise, however, it may have an influence on the way other code developers develop the code as they may not know the real meaning behind the name of the variable – therefore making it harder to alter the code. Utilizing a variable name significant to the variable’s actual meaning enhances the comprehension of the code, as the variable name is simpler to perceive the factors part in the program. Variable names can incorporate the type of data of the variable, as it deducts the chances of a variable name placed as an incorrect data type.

In conclusion, these are the three main factors in which the readability of a code can be improved so the viewers or programmers understand what is being made. This makes it much easier to comprehend as well as understanding its sole purpose of the software.