Software Engineering

Description

Mind Map on Software Engineering, created by Diego Santos on 02/12/2014.
Diego  Santos
Mind Map by Diego Santos, updated more than 1 year ago More Less
Mohamed Moalin
Created by Mohamed Moalin over 9 years ago
Diego  Santos
Copied by Diego Santos over 9 years ago
92
0

Resource summary

Software Engineering

Annotations:

  •  Software engineering is the discipline concerned with all aspects of complex software production, from initial specification through development to delivery and maintenance of the final product.  
  1. Good quality software is
    1. Dependable
      1. Secure
        1. Reliable
          1. Safe
          2. Efficient
            1. Makes good use of recourses
              1. Memory
                1. processor
                  1. Network capacities
                2. Usable
                  1. Easy to learn
                    1. Appropriate for tasks
                      1. takin into account different classes of users
                      2. Delivers the required functionality
                        1. Maintainable
                          1. Easily evolve with changing needs/appropriate documentation
                        2. Causes of system failure
                          1. Coding Errors
                            1. Errors in supporting infrastructure
                              1. Errors in translating requirements to design
                                1. Incorrect interpretation or omission of user requirements
                                2. Software Project Management
                                  1. Costing
                                    1. Economic feasibility study
                                      1. Cost/Benefit analysis
                                        1. TB-TC/TC
                                    2. Monitoring and Reviews
                                      1. Personnel seletion and evaluation
                                        1. Report writing & presentation
                                          1. Difficulties in project management
                                            1. Projects are intangible
                                              1. Projects are uniquely inflexible
                                                1. The software development isn't standardized
                                                  1. Many software are one-off projects
                                                2. Project Planning/Scheduling
                                                  1. Constraints
                                                    1. Budget
                                                      1. Time
                                                        1. infrastructure
                                                        2. Activities/Tasks

                                                          Annotations:

                                                          • Value of activity networks: - provide insight to non-obvious dependencies among tasks. -They help to optimise allocation of resources.  -a- allocate more people to tasks in critical path in order to shorten project time.  -b- allocate less people to tasks on non-critical paths tasks and allow them to finish later without any impact on the overall time  - They may initiate design changes that could shorten the critical path.  . - They may be used to partly automate project planning
                                                          1. Which can run concurrently
                                                            1. Milestones
                                                            2. Milestones
                                                            3. Software Processes
                                                              1. The waterfall method

                                                                Annotations:

                                                                • Requirements definition:the system services and constraints are established consulting the users. These are defined in detail and form a specification. System and software design: requirements are allocated to hardware and software, and an overall architecture is established. Software design involves identification of objects, data and operations. implementation and unit testing:Software design is realised as a set of program units. Unit testing verifies that each unit meets its specification. integration and system testing:Units are integrated and tested to ensure requirements have been met. Delivery of product. operation and maintenance: Correction of errors and changes to accommodate new demands.
                                                                1. Evolutionary development

                                                                  Annotations:

                                                                  • Advantages: By experimenting with incremental versions, users develop a better understanding of their needs. Avoiding omission and misinterpretation of requirements
                                                                  • Disadvantages Development is not transparent documentation is labour intensive and pointless for throwaway prototyping special tools may be needed failure rate high for each change
                                                                  1. Exploratory development
                                                                    1. Development starts from a core of well understood requirements, systems involve as customers experiment with intermediate versions
                                                                    2. Throw-away prototyping
                                                                      1. Development starts from poorly understood parts of the system, to clarify requirements early versions are quickly made and withdrawn
                                                                        1. Later versions can use a more structured approach for example the waterfal method
                                                                      2. Encremental development

                                                                        Annotations:

                                                                        • Advantages management of large projects become easier functions are delivered with each increment functionality is available earlier lower risk of overall project failure highest priority systems are delivered earlier and are tested more
                                                                      3. Specification

                                                                        Attachments:

                                                                        1. Development
                                                                          1. Validation
                                                                            1. Evaluation
                                                                              Show full summary Hide full summary

                                                                              Similar

                                                                              Ingeniería de requerimientos
                                                                              Catalina Paz
                                                                              Variables
                                                                              Alondra Nicol
                                                                              Algorithms and Software Development
                                                                              Alondra Nicol
                                                                              Patents
                                                                              Miguel Torres
                                                                              Patents
                                                                              BP BP
                                                                              C1 - Formulae to learn
                                                                              Tech Wilkinson
                                                                              Science Additional B3 - Animal and Plant Cells Flashcards
                                                                              Stirling v
                                                                              History- Religion and medicine
                                                                              gemma.bell
                                                                              GCSE AQA Biology 2 DNA & Cell Division
                                                                              Lilac Potato
                                                                              P1 quiz
                                                                              I M Wilson
                                                                              Cloud Data Integration Specialist Certification
                                                                              James McLean