Software Development

Description

A level Computing Mind Map on Software Development, created by Amara f on 02/03/2024.
Amara f
Mind Map by Amara f, updated 12 days ago
Amara f
Created by Amara f 9 months ago
0
0

Resource summary

Software Development
  1. Aspects of software development
    1. Analysis
      1. defining the problem and establishing the requirements of the project
      2. Design
        1. considering which algorithms, data structures, user interfaces etc. should be used
        2. Testing
          1. Black box/functional
            1. looking at the program spec. and a creating set of data that covers all inputs and outputs and program func..
              1. doesn't look at the code
            2. White box / structural
              1. SOFTWARE DEV. TEAMS -> program code is studied -> tests are devised which test each possible path at least once.
              2. Alpha
                1. IN-HOUSE SOFTWARE DEV. TEAMS reveals both errors and omissions in the system requirements definition
                2. Beta
                  1. giving a newly developed software package to a number of potential users who agree to use the system and report any problems to the developers
                3. Implementation
                  1. After testing stage has been used to make the appropriate changes to the software, it is installed onto the users’ systems
                  2. Evaluation
                    1. effectiveness of software is evaluated against the system req. defined during analysis stage to evaluate its suitability in solving the problem. Different criteria are considered -> robustness, reliability, portability and maintainability.
                    2. Maintenance
                      1. Development
                      2. Methodologies
                          1. iterative, regularly develops prototypes
                            1. collection of methodologies
                              1. aim to improve the flexibility of software development
                                1. adapt to changes in user requirements faster.
                                  1. builds software incrementally from the start of the project, instead of trying to deliver all at once.
                                    1. Small - medium projects + unclear initial requirements
                                      1. Agile
                                      2. Waterfall lifecycle
                                        1. large complex projects
                                          1. req. well understood
                                            1. stages carried out sequentially
                                                  1. focus of effectively managing risk-heavy projects
                                                    1. Analysing system requirements
                                                      1. Pinpointing and mitigating risks
                                                        1. Development, testing and implementation
                                                            1. Evaluating to inform the next iteration
                                                      2. Large, risk-intensive projects with a high budget
                                                        1. Spiral
                                                        2. XP
                                                          1. pair of programmers alongside a representative end-user
                                                            1. built on ‘user stories’:
                                                              1. system reqs. are specified by end-user + used when designing the program.
                                                            2. XP
                                                              1. high quality code
                                                                1. user requirements made in focus groups
                                                                  1. prototype made and developed along with the reqs.
                                                                    1. continuously until the final product is reached
                                                                  2. Small - medium, low-budget projects with short time-frames.
                                                                    1. RAD
                                                                    2. Comparisons

                                                                      Attachments:

                                                                    3. Writing and following algorithms
                                                                      1. ALGORITHM
                                                                        1. sequence of instructions that result in a desired outcome
                                                                      Show full summary Hide full summary

                                                                      Similar

                                                                      A level Computing Quiz
                                                                      Zacchaeus Snape
                                                                      Types and Components of Computer Systems
                                                                      Jess Peason
                                                                      Input Devices
                                                                      Jess Peason
                                                                      Output Devices
                                                                      Jess Peason
                                                                      Computing
                                                                      Kwame Oteng-Adusei
                                                                      Historical Development of Computer Languages
                                                                      Shannon Anderson-Rush
                                                                      Useful String Methods
                                                                      Shannon Anderson-Rush
                                                                      Polymer 2.0 - Custom Element - Register Element
                                                                      Ravi Upadhyay
                                                                      Pack of playing cards answer
                                                                      Karl Taylor
                                                                      Code Challenge Flow Chart
                                                                      Charlotte Hilton
                                                                      Computing Hardware - CPU and Memory
                                                                      ollietablet123