Presentation is loading. Please wait.

Presentation is loading. Please wait.

© NALO Solutions Limited NALO Solutions, presents the – Revenue Collector App Using Mobile Phones to gather Revenue www.nalosolutions.com SOFTWARE ENGINEERING.

Similar presentations


Presentation on theme: "© NALO Solutions Limited NALO Solutions, presents the – Revenue Collector App Using Mobile Phones to gather Revenue www.nalosolutions.com SOFTWARE ENGINEERING."— Presentation transcript:

1 © NALO Solutions Limited NALO Solutions, presents the – Revenue Collector App Using Mobile Phones to gather Revenue www.nalosolutions.com SOFTWARE ENGINEERING Stephane Nwolley Jnr

2 2 © SE RELEVANT NOTE

3 3 © KEY FOCUS AREAS IN SE  Introduction  Software Process  Requirement Engineering  System Modeling  Architectural Design  Software Testing  Dependability and Security  Project Management  Software Evolution

4 4 © INTRODUCTION Challenges  Effort intensive  High Cost  Long Development time  Changing needs of users  High risk of failure, user acceptance, performance, maintainability… Quite different from one time programs where developers and users are the same

5 5 © SUCCESSFUL SOFTWARE PROJECTS  SW Development have not always been successful  When do we say a software project is successful? Development completed It is useful It is usable It is used  Cost-effectiveness, maintainability implied

6 6 © WHEN DO WE SAY A SOFTWARE PROJECT HAS FAILED  Schedule slippage  Cost over-runs  Does not solve the users problem  Poor Quality  Poor maintainability

7 7 © REASONS OF SOFTWARE FAILURES  No Planning of development work – eg no milestone  Deliverables to the user not identified  Poor understanding of user requirements  No control or review  Technical incompetence of developers  Poor understanding of cost and effort by both developer and user

8 8 © SOFTWARE PROCESSES  Process consist of activities/steps to be carried out in a particular order  Software process deals with both the technical and management issues  Consist of different types of process Process of software development itself Process for managing the project itself (resources, cost) Process for handling the change Process to ensure all 3 processes are kept up to date to benefit from new development, standardization etc. (ISO)

9 9 © PLAN DRIVEN AND AGILE PROCESS  Plan-driven processes are processes where all of the process activities are planned in advance and progress is measured against this plan.  In agile processes, planning is incremental and it is easier to change the process to reflect changing customer requirements.  In practice, most practical processes include elements of both plan-driven and agile approaches.  There are no right or wrong software processes.

10 10 © SOFTWARE PROCESS MODEL  The waterfall model  Plan-driven model. Separate and distinct phases of specification and development.  Incremental development  Specification, development and validation are interleaved. May be plan- driven or agile.  Reuse-oriented software engineering  The system is assembled from existing components. May be plan-driven or agile.  In practice, most large systems are developed using a process that incorporates elements from all of these models.

11 11 © REQUIREMENT ENGINEERING  Requirements inception or requirements elicitation -  Requirements identification - identifying new requirements  Requirements analysis and negotiation - checking requirements and resolving stakeholder conflicts  Requirements specification (e.g., software requirements specification; SRS) - documenting the requirements in a requirements document  Systems modeling - deriving models of the system, often using a notation such as the Unified Modeling Language (UML)  Requirements validation - checking that the documented requirements and models are consistent and meet stakeholder needs  Requirements management - managing changes to the requirements as the system is developed and put into use

12 12 © ENGINEERING APPROACH TO SOFTWARE DEVELOPMENT  Attempt to estimate cost/effort  Plan and schedule work  Involve user in defining requirements  Identify stages in development  Define clear milestones so that progress can be measured  Schedule interviews both for control and quality  Define deliverables  Plan extensive testing

13 13 © SYSTEM MODELING  Use case Diagram – representation of users interaction with the system  Sequence Diagram - shows how processes operate with one another and in what order  Activity UML – graphical representation of workflow of stepwise activity and actions

14 14 © ARCHITECHTURE DESIGN  Software architecture refers to the high level structures of a software system.  Interfaces – Shows how different applications would be integrated

15 15 © SOFTWARE TESTING  Unit testing - refers to tests that verify the functionality of a specific section of code, usually at the function level.  Component Testing - can be used to check the handling of data passed between various units,  System Testing – end to end testing  User testing – focuses on operability

16 16 © DEPENDABILITY AND SECURITY  Hardware failure - Hardware fails because of design and manufacturing errors or because components have reached the end of their natural life.  Software failure - Software fails due to errors in its specification, design or implementation.  Operational failures - Human operators make mistakes. Now perhaps the largest single cause of system failures in socio-technical systems.  Important to ensure that you lead as a project manager knowing your environment

17 17 © INTRODCUTION TO BE CONTINUED WHAT TO EXPECT IN THE EXAMS?

18 18


Download ppt "© NALO Solutions Limited NALO Solutions, presents the – Revenue Collector App Using Mobile Phones to gather Revenue www.nalosolutions.com SOFTWARE ENGINEERING."

Similar presentations


Ads by Google