Informações da Disciplina

 Preparar para impressão 

Júpiter - Sistema de Gestão Acadêmica da Pró-Reitoria de Graduação


Faculdade de Economia, Administração, Contabilidade e Atuária
 
Contabilidade e Atuária
 
Disciplina: EAC0573 - Logic and Programming in Business

Créditos Aula: 2
Créditos Trabalho: 0
Carga Horária Total: 30 h
Tipo: Semestral
Ativação: 01/01/2017 Desativação:

Objetivos
The course is entirely offered, taught and conducted in our Undergraduate Accounting Program in English.


In a world of ever increasing data and information overload, organizations cannot afford to bypass strong and legitimate computational solutions to boost quality decision-making. Big data, business analytics, data mining, cloud services, distributed processing, or business intelligence are just examples of current topics. The interface between technical computing and business acumen has long been object of study, with both extremes yielding sound payoffs. However, greater payoff tends to be achieved with a blended approach (usually as a result of well-formed teams). In order to perform at the optimal level, team members must step into the “other” area (out of comfort zone). 
This course is designed to help students with little or no prior knowledge in computer programming, who are interested in learning about logic and programming in the object-oriented paradigm, using Python (a current and relevant language) and C (a powerful and imperative computer language). As learning strategy, we will use active lectures (laboratory), short videos, readings, quizzes, peer evaluation and programming assignments targeting computing techniques in business areas. To improve knowledge in this field, participants will prepare short programs and evaluate programs prepared by their peers. Upon completion of this course students will have developed a valuable skill: introductory, but functional, comprehension of C, Python and SQL-databases to better perform in organizations in light of the aforementioned business scenario.

In this course students will learn basic concepts in computer programming with emphasis on business. The goal is to help students experience a sound learning environment to develop programming skills in C and Python interacting with databases, to better perform in business. Upon successful conclusion of this course, students will be able to:

1. Develop an attitude towards decision, information, data, systems, and computers, based on a critical view of the new business environment and intensified knowledge economy;

2. Comprehend how problem-solving and data analytics evolved throughout time;
3. Discuss programming in a stimulating fashion, beyond its mechanics, aiming at attracting even more talented people to this track;

4. Analyze problems in light of object-oriented programming;

5.Comprehend C and Python languages, including variables, expressions, files, flow statements, loop statements, functions, classes, methods, and modules;

6. Comprehend database concepts and integration, SQL servers/clients, SQL statements;

7. Apply solutions, mostly in Python, to solve statistical and graphical representation of datasets;

8. Apply solutions, mostly in Python, to selected business problems.
 
Docente(s) Responsável(eis)
73235 - Edgard Bruno Cornacchione Junior
 
Programa Resumido
00. Introduction to programing in business

01. C, Python and the operational environment

02. Variables, data types, arrays, operators, and expressions

03. Programs and files

04. Flow control

05. Loop control

06. Functions, parameters and return values

07. Classes, objects, attributes and methods

08. Libraries, Modules and packages

09. Statistics and graphical representations

10. Databases and queries

11. Optimization with extensions and compilers
 
Programa
00. Introduction to programing in business 
Organizations, knowledge economy, decision challenges, relevance of coding, job postings, future of business. 
Problem-solving, structured/unstructured decisions, data, and analytics.
 
01. C, Python and the operational environment
Logic, computer languages, evolution, purpose, compilers, and interpreters. 
C, Python. PyCharm. Pytonista. Trinket.io. TutorialsPoint.com/CodingGround.

02. Variables, data types, arrays, operators, and expressions
Constants, variables, data types. Declarations. Create and manipulate. Operators and expressions. 
Arrays and operations. Protocol for variable names. 

03. Programs and files
Text editors and GUI programming environments. Input/output control. Persistent data. 
Managing files (OS). 

04. Flow control
If / Elif / Else statement. Switch. Examples. 

05. Loop control
For / Else statement. While / Else statement. Infinite Loop. Break/Continue. Examples.

06. Functions, parameters and return values
Logic, optimization, clarity, and performance. Reuse. 
Local / Global scope. 

07. Classes, objects, attributes and methods
Definition, uses, implementation, and examples. 
 
08. Libraries, Modules and Packages
Concept. Flexible and extensible attributes of Python. Import Statement. Python Library Reference.
Date / Time. Random.  
Financial examples (Numpy). 

09. Statistics and graphical representations
Statistics examples (Scipy)
Graphical examples (Matplotlib)

10. Databases and queries
Databases, tables, views, procedures. Normalization. SQL statements. NoSQL paradigm, JSON. 
Multiple access control. Connections, Client/Server. 
Pandas, SQLite3, MYSQL.  

11. Optimization with extensions and compilers
py2app, py2exe, pyInstaller.  Cython. GCC.
 
Avaliação
     
Método
According to the course focus, a student-centered approach is adopted based on the experiential model. A combination of conceptual and practical application of topics is present in all classes with lectures or videos to present content or instruction, followed by practical application in the computer laboratory or home assignments. The course is supported by Moodle (LMS at USP). There are various components to assessing participants, helping to create a more comprehensive understanding of student performance. The course adopts (a) program-exercises (with peer evaluation), (b) quizzes on discussed topics, (c) performance on exams, and (d) participation & surprise me! Next are the contributions of each assessment component (proportions) to the final grade of the participant: (a) Program-exercises (with peer evaluation) 25% (b) Quizzes on discussed topics 20% (c) Exams (Mid-term and Final) 40% (d) Participation & Surprise me! 15%
Critério
Criterion: Final evaluation will be expressed by a value between zero and ten (0 to 10). To pass the course, student must have a minimum value of 5 (five) and minimum attendance of 70%. Less than 70% of attendance will cause course failure, regardless of the value. Less than a value of three (3) will cause course failure, regardless of the attendance.
Norma de Recuperação
Re-assessment: According to USP regulations, students above a minimum value of three (3) and bellow a value of five (5) will be offered a chance to take a re-assessment, in case they have reached the required minimum attendance level. The final grade will be calculated by the average between the first grade and re-assessment grade. To pass the course, student must have a minimum value of 5 (five) in the final grade after the re-assessment.
 
Bibliografia
     
BASIC 

Bailey, T. (2005). An introduction to C programming language and software design. U of Utah. Retrieved from http://www.eng.utah.edu/~bigham/ctext.pdf

Borges, L. E. (2010). Python para desenvolvedores (2 ed.). Rio de Janeiro: Edição do autor.

Ford, P. (2015). What is code? Bloomberg (June 11, 2015). Retrived from http://www.bloomberg.com/graphics/2015-paul-ford-what-is-code

Kernighan, B. W. & Ritchie, D. M. (1988). The C programming language, 2nd ed. New Jersey/NY: Prentice Hall.  

Meyer, C. (2015). Should accounting students learn to code? Retrieved from https://www.aicpa.org/interestareas/accountingeducation/newsandpublications/pages/should-accounting-students-code.aspx.

Swaroop, C. H. (2016). A byte of Python. Retrieved from http://swaroopch.com/notes/python.


EXTRA

Downey, A. (2012). Think Python: How to think like a computer scientist. Needham, MA: Green Tea Press. Retrieved from http://greenteapress.com/thinkpython/thinkpython.pdf

Matthes, E. (2012). Introduction to Python. Retrieved from http://www.introtopython.org.

McKinney, W. (2016). Pandas: Powerful Python data analysis toolkit. Retrieved from http://pandas.pydata.org/pandas-docs/stable/pandas.pdf.

McMillan, S. (?). C language tutorial. Drexel U. Retrieved from http://www.physics.drexel.edu/students/courses/Comp_Phys/General/C_basics/

Meyers, C. (2015). SQL introduction for Python programmers. Retrieved from http://www.openbookproject.net/py4fun/sql/sql.html.

Reitz, K. (2016). Python guide documentation. Retrieved from https://media.readthedocs.org/pdf/python-docs/latest/python-docs.pdf.

Rossum, G. (2016). Python tutorial (release 2.7.11). Python Software Foundation. Retrieved from https://docs.python.org/2/tutorial.

Varoquaux, G., Gouillart, E., and Vahtras, O. (2015). Scipy lecture notes. Retrieved from http://www.scipy-lectures.org/_downloads/ScipyLectures.pdf
 

Clique para consultar os requisitos para EAC0573

Clique para consultar o oferecimento para EAC0573

Créditos | Fale conosco
© 1999 - 2024 - Superintendência de Tecnologia da Informação/USP