290 likes | 568 Views
Software Development Techniques. Colt, CEO Nikki, CFO Silja Wiebe , CTO Ilka Horch , CIO. Outline. Introduction of the Brown Pup Adult Toy Vault Company Description Problem Description Software Development Techniques General Definition of SDT Programming Language Waterfall Model
E N D
Software Development Techniques Colt, CEO Nikki, CFO SiljaWiebe, CTO IlkaHorch, CIO
Outline • Introduction of the Brown Pup • Adult Toy Vault • Company Description • Problem Description • Software Development Techniques • General Definition of SDT • Programming Language • Waterfall Model • Rapid Application Development • Computer-Aided Software Engineering • Extreme Programming • Recommendation The Brown Pup
Introduction of the brown pup Team members: Colt, CEO Nikki, CFO Silja, CTO Ilka, CIO The Brown Pup
Introduction 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
Adult 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
Adult 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 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 techniques Programming Language • artificiallanguagethatcanbeusedtocontrolthebehaviorof a machine, particularly a computer • definedbysyntacticandsemanticruleswhichdescribetheirstructureandmeaningrespectively • prominent purposeofprogramminglanguagesistoprovideinstructionsto a computer The Brown Pup
Software 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 techniques Waterfall Model The Brown Pup
Software development techniques Waterfall Model Pro • Possibility to discover mistakes early • save money • placesemphasis on documentation • simple andarguablymoredisciplinedapproach • structuredapproachthatprogresseslinearly Con • Impossiblitytosatisfactoralycompleteonestep • Method falls apart whenproblemisconstantlychanging • feedbackfromfollowingphasesisneededtocompleteprecedingphasessatisfactorily The Brown Pup
Software 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 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 (80 - 20 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 techniques The Brown Pup
Software development techniquesRapid Application development 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 The Brown Pup
Software 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 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 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 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 techniques Computer-Aided Software Engineering The Brown Pup
Software 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 techniques The Brown Pup
Recommendations Rapid Application Development • IT Consultants • Accenture • Chinook • Do it yourself • RAD • Hire internal IT • Purchase software The Brown Pup
Recommendation 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
Recommendation 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
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