S OFTWARE D EVELOPMENT T ECHNIQUES Colt, CEO Nikki, CFO Silja Wiebe, CTO Ilka Horch, CIO
Software Development Technique O UTLINE 1. Introduction of the Brown Pup 2. Adult Toy Vault 1. Company Description 2. Problem Description 3. Software Development Techniques 1. General Definition of SDT 2. Programming Language 3. Waterfall Model 4. Rapid Application Development 5. Computer-Aided Software Engineering 6. Extreme Programming 4. Recommendation The Brown Pup
Software Development Technique I NTRODUCTION OF THE BROWN PUP Team members: Colt, CEO Nikki, CFO Silja, CTO Ilka, CIO The Brown Pup
Software Development Technique I NTRODUCTION OF THE BROWN PUP Company Overview “The Brown Pup is a multi-national company with many dog parlors around the world and they are all located in the famous Hilton-Hotels to serve our famous and rich customers and make their dogs feel happy!” The Brown Pup
Software Development Technique A DULT TOY VAULT Company Description a smaller, Bend-based storage facility for boats, RVs, quads, jetskis, snow mobiles, and various other land and water recreational vehicles growing rapidly Currently, we offer 50 storage units are at 100% capacity with a wait list The Brown Pup
Software Development Technique A DULT TOY VAULT Problem Description handling the rapidly growing customer base with expanding facilities design a website that handles customer receivables manages the waiting list manages customer 30 day notices and applications gives access to the applicant's credit history and references ⇒ essentially handle the entire business transactions while allowing both Adult Toy Vault and customers to interface online The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES General Definition Software development deals with the creation of highly complex and dynamic “systems” Literally SoftWARE means “Soft” HardWARE, which stands for pliable electronics The increase in hardware-capabilities resulted in an exponential increase of potential software complexity The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES Programming Language artificial language that can be used to control the behavior of a machine, particularly a computer defined by syntactic and semantic rules which describe their structure and meaning respectively prominent purpose of programming languages is to provide instructions to a computer The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES Waterfall Model Sequential software development model Development as steadily downward flowing process Requirements analysis Design Implementation Testing (validation) Integration maintenance The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES Waterfall Model The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES The Brown Pup 11 Pro Possibility to discover mistakes early save money places emphasis on documentation simple and arguably more disciplined approach structured approach that progresses linearly Con Impossiblity to satisfactoraly complete one step Method falls apart when problem is constantly changing feedback from following phases is needed to complete preceding phases satisfactorily Waterfall Model
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES Rapid Application Development a very flexible methodology main mechanisms prototyping user feedback best use where a large user community the requirements are unclear high possibility of changes in requirements and features typical chain of RAD process events The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES Rapid Application Development creating by involving the user community in all phases of the creation a user driven design manifestation of Vilfred Pareto's law ( Rule) 80% of the costs of a complete system are due to 20% of the features included in the system The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES R APID A PPLICATION DEVELOPMENT The Brown Pup 15 Pro Flexible and adaptable to changes Regular reviews for completeness (in creation process) short development cycles involves user participation overall reduction in project risk reduction of costs Con Unknown cost of product high time commitment required by important users
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES Computer-Aided Software Engineering tool which aids software engineers to maintain and develop software. basic idea behind CASE is to support each phase of the life cycle with a set of labor saving tools CASE tools either concentrate on supporting the early phases or the implementation phases of the life cycle The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES Computer-Aided Software Engineering Use-Case Diagram describing the external view of the system and its interactions with the outside world Use-cases are typical interactions of actors with the system The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES Computer-Aided Software Engineering Class Diagram central modeling technique that runs through nearly all object-oriented methods describes the types of objects in the system and various kinds of static relationships which exist between them three principal kinds of relationships associations Subtypes aggregation The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES Computer-Aided Software Engineering Class Diagram State Transition Diagrams machine receives events each event can cause the machine to transition from one state to another The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES Computer-Aided Software Engineering The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES Extreme Programming eight years old a deliberate and disciplined approach stresses customer satisfaction confidently respond to changing customer requirements emphasizes team work improves a software project in four essential ways communication simplicity feedback courage like a jig saw puzzle The Brown Pup
Software Development Technique S OFTWARE DEVELOPMENT TECHNIQUES The Brown Pup
Software Development Technique R ECOMMENDATIONS Rapid Application Development IT Consultants Accenture Chinook Do it yourself RAD Hire internal IT Purchase software The Brown Pup
Software Development Technique R ECOMMENDATION Rapid Application Development Refers to a development life cycle designed for: Higher quality Faster development Design = 30% of completion time It includes CASE features, visual programming, object creation, remote data access using SQL The Brown Pup
Software Development Technique R ECOMMENDATION Rapid Application Development Very flexible If possibility of growing, it will grow with you. Faster implementation and early visibility of an end product The Brown Pup
Software Development Technique RECOMMENDATION Cost Have an IT person in house, then only $100 for software. Standard development environment Java 2, enterprise, microsoft.net You want to do it without IT help it will be thousands for the software. awareiam.com The Brown Pup
Software Development Technique The Brown Pup