Software Development Initiation Planning Design Analysis Development

Slides:



Advertisements
Similar presentations
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
Advertisements

Chapter 6: Design of Expert Systems
Software Development Unit 6.
System Implementation
Software Design & Development Software Design & Development Programming Types Event Driven Programming Event driven programming Is a type of programming.
Software Development Life Cycle (SDLC)
1 Shawlands Academy Higher Computing Software Development Unit.
Requirements Walk-through
ITEC224 Database Programming
GCSE OCR 3 A451 Computing Professional standards
Ch.4 The UCSD Process.
Design and Programming Chapter 7 Applied Software Project Management, Stellman & Greene See also:
1 The Software Development Process  Systems analysis  Systems design  Implementation  Testing  Documentation  Evaluation  Maintenance.
BTEC Unit 06 – Lesson 08 Principals of Software Design Mr C Johnston ICT Teacher
WP3 Quality – Some ideas Linda Cornwall WP3 meeting 15 th January 2004.
Professional IT Roles Investigate IT professional roles. Find out what each role involves, what the job entails. Identify what personal qualities are needed.
Security - Why Bother? Your projects in this class are not likely to be used for some critical infrastructure or real-world sensitive data. Why should.
Intermediate 2 Software Development Process. Software You should already know that any computer system is made up of hardware and software. The term hardware.
Chapter 1 Program design Objectives To describe the steps in the program development process To introduce the current program design methodology To introduce.
Code Development Code development for end user systems.
Sanjay Johal. Introduction(1.1) In this PowerPoint I will be explaining :  The purpose of the code for each of the two given programs, e.g. to carry.
The Software Development Process
VIRUS.
Design and Planning Or: What’s the next thing we should do for our project?
Herriman High Computer Programming 1A Software Development Cycle Things to Know.
Oman College of Management and Technology Course – MM Topic 7 Production and Distribution of Multimedia Titles CS/MIS Department.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
Observing the Current System Benefits Can see how the system actually works in practice Can ask people to explain what they are doing – to gain a clear.
A brief look at the components that make up the system life cycle.
FACTORS AFFECTING THE EFFICIENCY OF DATA PROCESSING SYSTEMS.
OCR A Level F453: The function and purpose of translators Translators a. describe the need for, and use of, translators to convert source code.
OPERATING SYSTEMS (OS) By the end of this lesson you will be able to explain: 1. What an OS is 2. The relationship between the OS & application programs.
Software Design and Development Development Methodoligies Computing Science.
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
In today’s lesson we will be looking at: what we mean by the software development lifecycle the phases in the lifecycle We will focus particularly on testing:
Project Management Software development models & methodologies
CSC 108H: Introduction to Computer Programming
Software Development - Methodologies
Principles of Information Systems Eighth Edition
Advanced Computer Systems
Software Development Life Cycle Waterfall Model
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Component 1.6.
Digital Stewardship Curriculum
User-centred system design process
Fundamentals of Information Systems, Sixth Edition
Different Types of Testing
Introduction To Database Systems
Systems Analysis and Design
LCGAA nightlies infrastructure
Software Documentation
Chapter 6: Design of Expert Systems
Maintaining software solutions
Communicating Ideas Design ideas can be communicated in different ways. Method of communication will depend on which stage the design work is at and who.
Completing the tasks for A452 with….
Design and Programming
The Object-Oriented Thought Process Chapter 05
Lecture 09:Software Testing
The Five Stages of Writing
Unit 6 Assignment 2 Chris Boardley.
Information Systems, Ninth Edition
Dr. Rob Hasker SE 3800 Note 9 Reviews.
Topic 5: Communication and the Internet
Module 10 – Scratch Project
Module 10 – Scratch Project
Where is information used?
Unit 1 Programming - Assignment 3
What is a System? A system is a collection of interrelated components that work together to perform a specific task.
WEB DESIGN Cross 11, Tapovan Enclave Nala pani Road, Dehradun : ,
OBSERVER DATA MANAGEMENT PRINCIPLES AND BEST PRACTICE (Agenda Item 4)
Presentation transcript:

Software Development Initiation Planning Design Analysis Development Integration Testing Maintenance 18/11/2018 Sean Oram

Software Development Initiation Planning Design Analysis Development This is the starting stage of a software project. We would gather the basic idea of what piece of software we will be creating for example, a piece of software that would install a program for us (an installation wizard). Planning This is the stage in which the project manager and a few team members (if applicable) would plan everything together i.e. how is it going to be done. What will we need, what development software would we use? Design Analysis This is the period where we will be designing our piece of software, making sure you have everything you will need to develop the software, including the files that will be extracted by the software to the correct directories, insert registry entries in the correct areas, grant the right permissions to the right files. Development The phase in which we will be putting the design into action. The stage where prototypes would be created, starting to make the project work, coding, programming, designing how the application will look visually also Integration This is the stage in which we will integrate the code into our software design and start making the actual main program work, checking roughly for bugs as we go along to make it easier for testing in the next stage. Testing This is one of the final stages where we will be checking for bugs and issues with our programming, Making sure everything works smoothly, is accurate and correct, laid out neatly, is efficient as possible and fully functional. Maintenance The final stage of the development process, the stage where the software would be released and kept maintained to remain compatible with the latest updates of operating systems that the program supports Initiation Planning Design Analysis Development Integration Testing Maintenance

Software Development The Principles of Software Developing. We have to ensure that the software will be compatible with at least a few Operating systems, this maximises the chance of the software being used widely. We have to take into consideration the user requires in their software. What does it need to do and how will it be done? Finally our software will be elegant, Smooth organised coding ensures to minimize buggy software. We have to ensure that the software code is going to be efficient, Efficiency is very important when it comes to developing software.

Software Development Importance of code quality. Stability. In this section we will be looking at the many ways in which the importance of code quality applies to stable pieces of software. Quality of code is very important to ensure software is smooth, efficient and stable to run. Stability. The software runs as expected without errors or conflicts with the operating systems that it supports, issues that would typical cause programs to malfunction such as memory errors or has not sufficiently been made compatible enough to run stable on said operating systems. Efficiency. The software can run at an efficient level, does not consume a crazy amount of system resources and runs smoothly. Utilises enough system resources that it needs but without consuming too much to where it could potentially cause system instability if the program had memory leaks that would be an example of an inefficient program. Easily Maintained. Coding has been written in a neat layout, comments included to that develops that are working on the same product can easily update and maintain the software to remain compatible with the Operating Systems that it supports. Secure. The software is secure, the developers comply with the data protection act and have reflected that onto the software, ensuring that if for example it handles sensitive data such as patient medical records, it would have encryptions and passwords to keep said data secure. On the next slide is a diagram showing many factors and aspects on code quality

Software Development Image Source: http://www.stauffware.com/d_and_d/CodeQuality.png

Software Development Code Clarity and Readability. Layout. In this final section we will look at the many factors that make code readable and how you can improve readability in general by doing this also gives code clarity. Layout. Everything is neatly laid out into their own sections, making good use of indents and spaces to section parts of code is a nice way of giving code improved readability and clarity. Everything is neatly where it should be and not squeezed together tightly which in turn would make code look more confusing. Good use of Comments. Using a good amount of comments to describe non self-explanatory functions, variable and strings makes it much easier for us to look back at our code and not forget what something is for, it is especially useful as mentioned in the other slide that helps other coders working on the same project know what everything does. Descriptive Function, Variables and Object Names. Naming functions and variables names that reflect their purpose, for an example objects that are being used for certain purposes should be named accordingly, “doormainhall” could be an object name of a door in a game that would be the main entrance to a building. So if the door was not reacting to a certain event as it should they could easily determine what part of code they need to edit after debugging the game.